diff options
author | Aapo Haapanen <ext-aapo.haapanen@nokia.com> | 2012-02-24 14:31:09 (GMT) |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-02-25 10:55:40 (GMT) |
commit | 708bbde16d74a1d4f51242002ac82999d0045f97 (patch) | |
tree | e4a651af2be0e01908db53918469a123538fec4a /src/gui/inputmethod | |
parent | bc6e35d94325f4b18caec7ce0824c5beab95cdd7 (diff) | |
download | Qt-708bbde16d74a1d4f51242002ac82999d0045f97.zip Qt-708bbde16d74a1d4f51242002ac82999d0045f97.tar.gz Qt-708bbde16d74a1d4f51242002ac82999d0045f97.tar.bz2 |
Fix backspace on empty lines with custom QML editors
Symbian AknFEP doesn't return backspace keypresses to the editor if
the editor is empty. This causes problems for multiline editors,
because AknFEP can only see one line at a time. This issue has been
previously fixed by change a2709ef3f4410a1d1755e00353e6f969f8bb5613 so
that QCoeFepInputContext::DocumentLengthForFep returns lenght as 1
for empty lines. The fix was then refined by change
0ffd7fcc78e27f9184a6f1ee5a8a9cc5e6266998 so that the length is altered
only when the editor has multiple lines.
After the latest change, if a custom QML editor didn't have a lineCount
property, the code assumed it has only one line. This caused problems
for some custom multiline editors. This change alters the behaviour so
that if the code can't get the linecount from the editor, it assumes it
has multiple lines. This reverts the code to behave like before change
0ffd7fcc78e27f9184a6f1ee5a8a9cc5e6266998 for such custom QML editors.
Task-number: ou1cimx1#981078
Change-Id: I3551d1d3ca1984957465f894c8bc237544224468
Reviewed-by: Jaakko Helanti <ext-jaakko.helanti@nokia.com>
Reviewed-by: Murray Read <ext-murray.2.read@nokia.com>
Reviewed-by: Pasi Pentikäinen <ext-pasi.a.pentikainen@nokia.com>
Diffstat (limited to 'src/gui/inputmethod')
-rw-r--r-- | src/gui/inputmethod/qcoefepinputcontext_s60.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp index 50039f7..62553d8 100644 --- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp +++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp @@ -1551,7 +1551,10 @@ TInt QCoeFepInputContext::DocumentLengthForFep() const if (lineVariant.isValid()) { lineCount = lineVariant.toInt(); } else { - lineCount = 1; + // If we can't get linecount from a custom QML editor, assume that it + // has multiple lines, so that it can receive backspaces also when + // the current line is empty. + lineCount = 2; } } // To fix an issue with backspaces not being generated if document size is zero, |