summaryrefslogtreecommitdiffstats
path: root/meta/recipes-qt/qt4/qt-4.7.4/fix-qtbug-20925.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-qt/qt4/qt-4.7.4/fix-qtbug-20925.patch')
-rw-r--r--meta/recipes-qt/qt4/qt-4.7.4/fix-qtbug-20925.patch56
1 files changed, 56 insertions, 0 deletions
diff --git a/meta/recipes-qt/qt4/qt-4.7.4/fix-qtbug-20925.patch b/meta/recipes-qt/qt4/qt-4.7.4/fix-qtbug-20925.patch
new file mode 100644
index 0000000000..f99b76455d
--- /dev/null
+++ b/meta/recipes-qt/qt4/qt-4.7.4/fix-qtbug-20925.patch
@@ -0,0 +1,56 @@
+From 852abfca6f4c349dce9b895956922f96d82df579 Mon Sep 17 00:00:00 2001
+From: Andrew den Exter <andrew.den-exter@nokia.com>
+Date: Thu, 8 Sep 2011 12:28:49 +1000
+Subject: [PATCH] Fix double click and drag not extending word selection.
+
+mousePressed isn't set on the second press of a double click and so
+can't be used to determine if all selections should be skipped. Instead
+skip only the single click and drag selections if mousePressed is false.
+
+Change-Id: I5e7ba033f38b0f9b98fdca5c61a8548f92991601
+Task-number: QTBUG-20925
+Reviewed-by: Martin Jones
+
+https://bugreports.qt.nokia.com/browse/QTBUG-20925
+
+Original Author:Andrew den Exter <andrew.den-exter@nokia.com>
+Upstream-Status: Integrated in upcoming versions (4.8) as commit 852abfca6f4c349dce9b895956922f96d82df579
+---
+ src/gui/text/qtextcontrol.cpp | 7 +----
+ tests/auto/qtextedit/tst_qtextedit.cpp | 41 ++++++++++++++++++++++++++++++++
+ 2 files changed, 43 insertions(+), 5 deletions(-)
+
+diff --git a/src/gui/text/qtextcontrol.cpp b/src/gui/text/qtextcontrol.cpp
+index aacac04..996d488 100644
+--- a/src/gui/text/qtextcontrol.cpp
++++ b/src/gui/text/qtextcontrol.cpp
+@@ -1628,16 +1628,13 @@ void QTextControlPrivate::mouseMoveEvent(QEvent *e, Qt::MouseButton button, cons
+ return;
+ }
+
+- if (!mousePressed)
+- return;
+-
+ const qreal mouseX = qreal(mousePos.x());
+
+ int newCursorPos = q->hitTest(mousePos, Qt::FuzzyHit);
+ if (newCursorPos == -1)
+ return;
+
+- if (wordSelectionEnabled && !selectedWordOnDoubleClick.hasSelection()) {
++ if (mousePressed && wordSelectionEnabled && !selectedWordOnDoubleClick.hasSelection()) {
+ selectedWordOnDoubleClick = cursor;
+ selectedWordOnDoubleClick.select(QTextCursor::WordUnderCursor);
+ }
+@@ -1646,7 +1643,7 @@ void QTextControlPrivate::mouseMoveEvent(QEvent *e, Qt::MouseButton button, cons
+ extendBlockwiseSelection(newCursorPos);
+ else if (selectedWordOnDoubleClick.hasSelection())
+ extendWordwiseSelection(newCursorPos, mouseX);
+- else
++ else if (mousePressed)
+ setCursorPosition(newCursorPos, QTextCursor::KeepAnchor);
+
+ if (interactionFlags & Qt::TextEditable) {
+--
+1.6.1
+