diff options
author | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-08-02 22:49:38 +0200 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-08-02 22:52:32 +0200 |
commit | ee07b912a1768ea0b103544f9eeac41f3cf50cf6 (patch) | |
tree | 15bfa7e4a9c098511c1fc89e2b2c240520b85e2d /src/widgets/itemviews/qlistview.cpp | |
parent | 4bfff6a98b59b32605d881a463ad3edc221a7dc8 (diff) | |
parent | a96656a8fb6a3c1fc7765659efff28f807fd0deb (diff) |
Merge remote-tracking branch 'origin/5.9' into dev
Conflicts:
src/plugins/platforms/xcb/qxcbconnection.h
src/plugins/platforms/xcb/qxcbconnection_xi2.cpp
src/plugins/sqldrivers/sqlite/qsql_sqlite.cpp
src/plugins/styles/mac/qmacstyle_mac.mm
src/widgets/widgets/qdockarealayout.cpp
src/widgets/widgets/qmainwindow.cpp
src/widgets/widgets/qmainwindowlayout.cpp
src/widgets/widgets/qmainwindowlayout_p.h
tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
tests/auto/other/macnativeevents/BLACKLIST
tests/auto/widgets/widgets/qmenu/BLACKLIST
Change-Id: Ic8e724b80a65e7b1af25511b0e674d209265e567
Diffstat (limited to 'src/widgets/itemviews/qlistview.cpp')
-rw-r--r-- | src/widgets/itemviews/qlistview.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/widgets/itemviews/qlistview.cpp b/src/widgets/itemviews/qlistview.cpp index e234bae4dd..0efee755a2 100644 --- a/src/widgets/itemviews/qlistview.cpp +++ b/src/widgets/itemviews/qlistview.cpp @@ -40,7 +40,6 @@ #include "qlistview.h" -#ifndef QT_NO_LISTVIEW #include <qabstractitemdelegate.h> #include <qapplication.h> #include <qpainter.h> @@ -2814,11 +2813,17 @@ bool QIconModeViewBase::filterDragLeaveEvent(QDragLeaveEvent *e) bool QIconModeViewBase::filterDragMoveEvent(QDragMoveEvent *e) { - if (e->source() != qq || !dd->canDrop(e)) - return false; + const bool wasAccepted = e->isAccepted(); // ignore by default e->ignore(); + + if (e->source() != qq || !dd->canDrop(e)) { + // restore previous acceptance on failure + e->setAccepted(wasAccepted); + return false; + } + // get old dragged items rect QRect itemsRect = this->itemsRect(draggedItems); viewport()->update(itemsRect.translated(draggedItemsDelta())); @@ -3297,5 +3302,3 @@ QSize QListView::viewportSizeHint() const QT_END_NAMESPACE #include "moc_qlistview.cpp" - -#endif // QT_NO_LISTVIEW |