summaryrefslogtreecommitdiffstats
path: root/src/widgets/itemviews
diff options
context:
space:
mode:
Diffstat (limited to 'src/widgets/itemviews')
-rw-r--r--src/widgets/itemviews/qlistview.cpp7
-rw-r--r--src/widgets/itemviews/qlistview_p.h2
2 files changed, 7 insertions, 2 deletions
diff --git a/src/widgets/itemviews/qlistview.cpp b/src/widgets/itemviews/qlistview.cpp
index 1f33649668..c7085a0dc2 100644
--- a/src/widgets/itemviews/qlistview.cpp
+++ b/src/widgets/itemviews/qlistview.cpp
@@ -1989,6 +1989,11 @@ int QCommonListViewBase::horizontalScrollToValue(const int /*index*/, QListView:
/*
* ListMode ListView Implementation
*/
+QListModeViewBase::QListModeViewBase(QListView *q, QListViewPrivate *d)
+ : QCommonListViewBase(q, d)
+{
+ dd->defaultDropAction = Qt::CopyAction;
+}
#ifndef QT_NO_DRAGANDDROP
QAbstractItemView::DropIndicatorPosition QListModeViewBase::position(const QPoint &pos, const QRect &rect, const QModelIndex &index) const
@@ -2755,7 +2760,7 @@ bool QIconModeViewBase::filterStartDrag(Qt::DropActions supportedActions)
drag->setMimeData(dd->model->mimeData(indexes));
drag->setPixmap(pixmap);
drag->setHotSpot(dd->pressedPosition - rect.topLeft());
- Qt::DropAction action = drag->exec(supportedActions, Qt::CopyAction);
+ Qt::DropAction action = drag->exec(supportedActions, dd->defaultDropAction);
draggedItems.clear();
if (action == Qt::MoveAction)
dd->clearOrRemove();
diff --git a/src/widgets/itemviews/qlistview_p.h b/src/widgets/itemviews/qlistview_p.h
index 2e6f69713f..90fb9e1407 100644
--- a/src/widgets/itemviews/qlistview_p.h
+++ b/src/widgets/itemviews/qlistview_p.h
@@ -196,7 +196,7 @@ public:
class QListModeViewBase : public QCommonListViewBase
{
public:
- QListModeViewBase(QListView *q, QListViewPrivate *d) : QCommonListViewBase(q, d) {}
+ QListModeViewBase(QListView *q, QListViewPrivate *d);
QVector<int> flowPositions;
QVector<int> segmentPositions;