diff options
author | axis <qt-info@nokia.com> | 2010-08-31 11:15:28 (GMT) |
---|---|---|
committer | axis <qt-info@nokia.com> | 2010-09-01 13:03:55 (GMT) |
commit | 52cf47565e402dc682038ccaf8d725401802b603 (patch) | |
tree | 67b2484045c9f55893dd05d1bb794925b9cc20a3 /src/gui/inputmethod/qcoefepinputcontext_p.h | |
parent | c5901037f0d3ccd45b0c79b38ef5b04552dad0aa (diff) | |
download | Qt-52cf47565e402dc682038ccaf8d725401802b603.zip Qt-52cf47565e402dc682038ccaf8d725401802b603.tar.gz Qt-52cf47565e402dc682038ccaf8d725401802b603.tar.bz2 |
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
Diffstat (limited to 'src/gui/inputmethod/qcoefepinputcontext_p.h')
-rw-r--r-- | src/gui/inputmethod/qcoefepinputcontext_p.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/gui/inputmethod/qcoefepinputcontext_p.h b/src/gui/inputmethod/qcoefepinputcontext_p.h index cc14e89..2fd6d16 100644 --- a/src/gui/inputmethod/qcoefepinputcontext_p.h +++ b/src/gui/inputmethod/qcoefepinputcontext_p.h @@ -66,10 +66,10 @@ QT_BEGIN_NAMESPACE -class QCoeFepInputContext : public QInputContext, - public MCoeFepAwareTextEditor, - public MCoeFepAwareTextEditor_Extension1, - public MObjectProvider +class Q_AUTOTEST_EXPORT QCoeFepInputContext : public QInputContext, + public MCoeFepAwareTextEditor, + public MCoeFepAwareTextEditor_Extension1, + public MObjectProvider { Q_OBJECT @@ -153,6 +153,8 @@ private: MFepPointerEventHandlerDuringInlineEdit *m_pointerHandler; QBasicTimer m_tempPreeditStringTimeout; bool m_hasTempPreeditString; + + friend class tst_QInputContext; }; QT_END_NAMESPACE |