summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2023-04-19 13:23:10 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2023-04-19 17:12:10 +0000
commite60609822148f28aedbaa71265bb44ce1cc72ae2 (patch)
tree31348d8bb45260a86f02a21257bddebe584e90f8 /src
parent5cb647b2bb8e61348d62aaab48eb3c5a1b27a751 (diff)
downloadqtbase-e60609822148f28aedbaa71265bb44ce1cc72ae2.tar.gz
QWidgetTextControl: ignore invalid input method event
to avoid update the text document. Fixes: QTBUG-112953 Change-Id: Ib72de57133314e4eb38a15758b8318d901196d75 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io> (cherry picked from commit 70f064f270fa5765f0f00b8eccb45fb7eb68cd9a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src')
-rw-r--r--src/widgets/widgets/qwidgettextcontrol.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp
index a4679402dc..1204b48b50 100644
--- a/src/widgets/widgets/qwidgettextcontrol.cpp
+++ b/src/widgets/widgets/qwidgettextcontrol.cpp
@@ -2032,6 +2032,11 @@ void QWidgetTextControlPrivate::inputMethodEvent(QInputMethodEvent *e)
|| e->preeditString() != cursor.block().layout()->preeditAreaText()
|| e->replacementLength() > 0;
+ if (!isGettingInput && e->attributes().isEmpty()) {
+ e->ignore();
+ return;
+ }
+
int oldCursorPos = cursor.position();
cursor.beginEditBlock();