diff options
author | Michael Olbrich <m.olbrich@pengutronix.de> | 2015-05-27 09:55:33 +0200 |
---|---|---|
committer | Michael Olbrich <m.olbrich@pengutronix.de> | 2015-05-27 09:56:36 +0200 |
commit | 8ce61d1aade87710c305aaadccc846b14057c464 (patch) | |
tree | b46137da1b31243e8dd79034bbeb81cb191c9ae0 /patches/qt-everywhere-opensource-src-4.8.7/0005-Fix-dnd-issue-on-QWS.patch | |
parent | 7168cd4c2d80f1620f03c01fbb06009c895f3605 (diff) | |
download | ptxdist-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.patch | 64 |
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); + |