From 313ae1c3b581a3e3a44f86793e158ba9e8eae9ab Mon Sep 17 00:00:00 2001 From: J-P Nurmi <jpnurmi@theqtcompany.com> Date: Mon, 10 Nov 2014 16:40:02 +0100 Subject: [PATCH] Fix text selection on desktop So far, text selection handles were only provided by mobile specific styles. The new Flat style is an exception that provides text selection handles for mobile, but is still intended to be usable on desktop too. The text selection handling code thus needs not only to check whether the text selection handles exist, but also whether it's a mobile platform. This fixes text selection on desktop. Change-Id: Ibda2045ca42970e7db692d2e8370ac0dba21625a Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> --- src/controls/Private/TextInputWithHandles.qml | 6 +++--- src/controls/TextArea.qml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/controls/Private/TextInputWithHandles.qml b/src/controls/Private/TextInputWithHandles.qml index ceb63084f..d19dda31d 100644 --- a/src/controls/Private/TextInputWithHandles.qml +++ b/src/controls/Private/TextInputWithHandles.qml @@ -54,7 +54,7 @@ TextInput { property alias editMenu: editMenu cursorDelegate: __style && __style.__cursorDelegate ? __style.__cursorDelegate : null - selectByMouse: control.selectByMouse && (!cursorHandle.delegate || !selectionHandle.delegate) + selectByMouse: control.selectByMouse && (!Settings.isMobile || !cursorHandle.delegate || !selectionHandle.delegate) // force re-evaluation when selection moves: // - cursorRectangle changes => content scrolled @@ -137,7 +137,7 @@ TextInput { editor: input parent: control control: input.control - active: control.selectByMouse + active: control.selectByMouse && Settings.isMobile maximum: cursorHandle.position - 1 property var mappedPos: parent.mapFromItem(editor, editor.selectionRectangle.x, editor.selectionRectangle.y) @@ -163,7 +163,7 @@ TextInput { editor: input parent: control control: input.control - active: control.selectByMouse + active: control.selectByMouse && Settings.isMobile minimum: input.hasSelection ? selectionHandle.position + 1 : -1 property var mappedPos: parent.mapFromItem(editor, editor.cursorRectangle.x, editor.cursorRectangle.y) diff --git a/src/controls/TextArea.qml b/src/controls/TextArea.qml index 8cfb6dfdf..b8ed0ba2c 100644 --- a/src/controls/TextArea.qml +++ b/src/controls/TextArea.qml @@ -770,7 +770,7 @@ ScrollView { wrapMode: TextEdit.WordWrap textMargin: __style && __style.textMargin !== undefined ? __style.textMargin : 4 - selectByMouse: area.selectByMouse && (!cursorHandle.delegate || !selectionHandle.delegate) + selectByMouse: area.selectByMouse && (!Settings.isMobile || !cursorHandle.delegate || !selectionHandle.delegate) readOnly: false Keys.forwardTo: area @@ -885,7 +885,7 @@ ScrollView { control: area z: 1 // above scrollbars parent: Qt.platform.os === "ios" ? editor : __scroller // no clip - active: area.selectByMouse + active: area.selectByMouse && Settings.isMobile delegate: __style.__selectionHandle maximum: cursorHandle.position - 1 @@ -921,7 +921,7 @@ ScrollView { control: area z: 1 // above scrollbars parent: Qt.platform.os === "ios" ? editor : __scroller // no clip - active: area.selectByMouse + active: area.selectByMouse && Settings.isMobile delegate: __style.__cursorHandle minimum: edit.hasSelection ? selectionHandle.position + 1 : -1 -- GitLab