diff options
author | Nils Jeisecke <nils.jeisecke@saltation.com> | 2019-02-13 15:28:11 +0100 |
---|---|---|
committer | Nils Jeisecke <nils.jeisecke@saltation.com> | 2019-02-15 14:03:07 +0000 |
commit | 1d0f808c7dc708f5ec8093f09f332615b94f4318 (patch) | |
tree | 4eaa3caef49aab0e3884625720ed001f496d8236 /src/quick/items | |
parent | 1ffb45a3682c864f8071b8b19da49c9a7761dd5e (diff) |
TextEdit: Fix persistentSelection for readonly controls
TextEdit items with readOnly:true do not clear the selection on losing
focus which is expected with persistentSelection:false.
The reason is that a readonly TextEdit does never show a blinking cursor
and thus the selection clearing within setCursorVisible never happens.
This change adapts the implementation from TextInput.
Fixes: QTBUG-50587
Change-Id: Ie66baaa0ccbc006359473862d8e9dbecd46a59f6
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src/quick/items')
-rw-r--r-- | src/quick/items/qquicktextedit.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/quick/items/qquicktextedit.cpp b/src/quick/items/qquicktextedit.cpp index 3a12ad6ba5..6b4b118eb7 100644 --- a/src/quick/items/qquicktextedit.cpp +++ b/src/quick/items/qquicktextedit.cpp @@ -2689,6 +2689,12 @@ void QQuickTextEditPrivate::handleFocusEvent(QFocusEvent *event) q->disconnect(QGuiApplication::inputMethod(), SIGNAL(inputDirectionChanged(Qt::LayoutDirection)), q, SLOT(q_updateAlignment())); #endif + if (event->reason() != Qt::ActiveWindowFocusReason + && event->reason() != Qt::PopupFocusReason + && control->textCursor().hasSelection() + && !persistentSelection) + q->deselect(); + emit q->editingFinished(); } } |