diff options
-rw-r--r-- | src/quick/items/qquicktextinput.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/quick/items/qquicktextinput.cpp b/src/quick/items/qquicktextinput.cpp index 8a9827a0be..daa92d8d20 100644 --- a/src/quick/items/qquicktextinput.cpp +++ b/src/quick/items/qquicktextinput.cpp @@ -3494,11 +3494,10 @@ void QQuickTextInputPrivate::processInputMethodEvent(QInputMethodEvent *event) m_textLayout.setFormats(formats); updateDisplayText(/*force*/ true); - if ((cursorPositionChanged && !emitCursorPositionChanged()) - || m_preeditCursor != oldPreeditCursor - || isGettingInput) { + if (cursorPositionChanged && emitCursorPositionChanged()) + q->updateInputMethod(Qt::ImCursorPosition | Qt::ImAnchorPosition); + else if (m_preeditCursor != oldPreeditCursor || isGettingInput) q->updateCursorRectangle(); - } if (isGettingInput) finishChange(priorState); |