Cleaned up position tracking in the Symbian input methods.
authoraxis <qt-info@nokia.com>
Tue, 31 Aug 2010 11:15:28 +0000 (13:15 +0200)
committerJason McDonald <jason.mcdonald@nokia.com>
Fri, 3 Sep 2010 03:26:00 +0000 (13:26 +1000)
commit53f23931b51ddc8c9348b3e7855fc734588a6353
tree06e511bd633c494949c93e00f4dbda076082ca63
parent100c82d636b0e1c98285f1a2bf044f2e4d854606
Cleaned up position tracking in the Symbian input methods.

This fixed a case where using password mode would lead to Qt
believing that the cursor was one step to the left of where it really
was. This would have the effect of replacing the last character
instead of appending to it, and even crashing if the cursor was all
the way to the left.

The code is also much cleaner this way, but it meant that QTBUG-9867
had to be solved differently this time. We do this by assuming that
and empty FEP update means "erase last character", which seems to
work well in practice.

Also added a long overdue autotest for the FEP input methods. Most
tests pass, but some don't, which I will try to fix later.

Task:     QTBUG-9867
Task:     QTBUG-12949
RevBy:    Miikka Heikkinen
AutoTest: Included
(cherry picked from commit 52cf47565e402dc682038ccaf8d725401802b603)
src/gui/inputmethod/qcoefepinputcontext_p.h
src/gui/inputmethod/qcoefepinputcontext_s60.cpp
src/gui/kernel/qt_s60_p.h
tests/auto/qinputcontext/qinputcontext.pro
tests/auto/qinputcontext/tst_qinputcontext.cpp