summaryrefslogtreecommitdiffstats
path: root/src/widgets/kernel/qwindowcontainer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/widgets/kernel/qwindowcontainer.cpp')
-rw-r--r--src/widgets/kernel/qwindowcontainer.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/widgets/kernel/qwindowcontainer.cpp b/src/widgets/kernel/qwindowcontainer.cpp
index 206a265761..065f6c86cf 100644
--- a/src/widgets/kernel/qwindowcontainer.cpp
+++ b/src/widgets/kernel/qwindowcontainer.cpp
@@ -301,10 +301,16 @@ bool QWindowContainer::event(QEvent *e)
break;
#ifndef QT_NO_DRAGANDDROP
case QEvent::Drop:
- case QEvent::DragEnter:
case QEvent::DragMove:
case QEvent::DragLeave:
- return d->window->event(e);
+ QCoreApplication::sendEvent(d->window, e);
+ return e->isAccepted();
+ case QEvent::DragEnter:
+ // Don't reject drag events for the entire widget when one
+ // item rejects the drag enter
+ QCoreApplication::sendEvent(d->window, e);
+ e->accept();
+ return true;
#endif
default:
break;