summaryrefslogtreecommitdiffstats
path: root/patches/qt-everywhere-opensource-src-4.8.7/0005-Fix-dnd-issue-on-QWS.patch
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2015-05-27 09:55:33 +0200
committerMichael Olbrich <m.olbrich@pengutronix.de>2015-05-27 09:56:36 +0200
commit8ce61d1aade87710c305aaadccc846b14057c464 (patch)
treeb46137da1b31243e8dd79034bbeb81cb191c9ae0 /patches/qt-everywhere-opensource-src-4.8.7/0005-Fix-dnd-issue-on-QWS.patch
parent7168cd4c2d80f1620f03c01fbb06009c895f3605 (diff)
downloadptxdist-8ce61d1aade87710c305aaadccc846b14057c464.tar.gz
ptxdist-8ce61d1aade87710c305aaadccc846b14057c464.tar.xz
qt4: version bump 4.8.6 -> 4.8.7
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
Diffstat (limited to 'patches/qt-everywhere-opensource-src-4.8.7/0005-Fix-dnd-issue-on-QWS.patch')
-rw-r--r--patches/qt-everywhere-opensource-src-4.8.7/0005-Fix-dnd-issue-on-QWS.patch64
1 files changed, 64 insertions, 0 deletions
diff --git a/patches/qt-everywhere-opensource-src-4.8.7/0005-Fix-dnd-issue-on-QWS.patch b/patches/qt-everywhere-opensource-src-4.8.7/0005-Fix-dnd-issue-on-QWS.patch
new file mode 100644
index 000000000..511ff6918
--- /dev/null
+++ b/patches/qt-everywhere-opensource-src-4.8.7/0005-Fix-dnd-issue-on-QWS.patch
@@ -0,0 +1,64 @@
+From: Michael Olbrich <m.olbrich@pengutronix.de>
+Date: Fri, 8 Oct 2010 20:13:40 +0200
+Subject: [PATCH] Fix dnd issue on QWS
+
+An overrideCursor set in the application can be messed up by
+dnd stuff. As a result, the cursor gets stuck at Qt::ForbiddenCursor
+This patch seems to fix it, but I'm not sure if it breaks anything.
+
+Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
+---
+ src/gui/kernel/qdnd_qws.cpp | 9 +++------
+ 1 file changed, 3 insertions(+), 6 deletions(-)
+
+diff --git a/src/gui/kernel/qdnd_qws.cpp b/src/gui/kernel/qdnd_qws.cpp
+index 72488e8..11b2231 100644
+--- a/src/gui/kernel/qdnd_qws.cpp
++++ b/src/gui/kernel/qdnd_qws.cpp
+@@ -162,10 +162,10 @@ void QDragManager::updateCursor()
+ }
+ } else {
+ QCursor *overrideCursor = QApplication::overrideCursor();
+- if (!overrideCursor || overrideCursor->shape() != Qt::ForbiddenCursor) {
++ if (restoreCursor && (!overrideCursor || overrideCursor->shape() != Qt::ForbiddenCursor)) {
+ QApplication::changeOverrideCursor(QCursor(Qt::ForbiddenCursor));
+- currentActionForOverrideCursor = Qt::IgnoreAction;
+ }
++ currentActionForOverrideCursor = Qt::IgnoreAction;
+ if (qt_qws_dnd_deco)
+ qt_qws_dnd_deco->hide();
+ }
+@@ -246,7 +246,6 @@ bool QDragManager::eventFilter(QObject *o, QEvent *e)
+ willDrop = false;
+ global_accepted_action = Qt::IgnoreAction;
+ updateCursor();
+- restoreCursor = true;
+ object->d_func()->target = 0;
+ }
+ if (cw && cw->acceptDrops()) {
+@@ -257,7 +256,6 @@ bool QDragManager::eventFilter(QObject *o, QEvent *e)
+ willDrop = dee.isAccepted() && dee.dropAction() != Qt::IgnoreAction;
+ global_accepted_action = willDrop ? dee.dropAction() : Qt::IgnoreAction;
+ updateCursor();
+- restoreCursor = true;
+ }
+ } else if (cw) {
+ QDragMoveEvent dme(cw->mapFromGlobal(me->globalPos()), possible_actions, dropData,
+@@ -281,8 +279,8 @@ bool QDragManager::eventFilter(QObject *o, QEvent *e)
+ case QEvent::MouseButtonRelease:
+ {
+ qApp->removeEventFilter(this);
++ willDrop = false;
+ if (restoreCursor) {
+- willDrop = false;
+ #ifndef QT_NO_CURSOR
+ QApplication::restoreOverrideCursor();
+ #endif
+@@ -336,7 +334,6 @@ Qt::DropAction QDragManager::drag(QDrag *o)
+ willDrop = false;
+ updatePixmap();
+ updateCursor();
+- restoreCursor = true;
+ object->d_func()->target = 0;
+ qApp->installEventFilter(this);
+