diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp index 7ab098e121..d5e08e1934 100644 --- a/src/gui/kernel/qguiapplication.cpp +++ b/src/gui/kernel/qguiapplication.cpp @@ -546,9 +546,6 @@ void QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePriv void QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent *e) { - if (!e->window) - return; - QEvent::Type type; // move first Qt::MouseButtons stateChange = e->buttons ^ buttons; @@ -561,6 +558,9 @@ void QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::Mo QWindow *window = e->window.data(); + if (!window) + window = QGuiApplication::topLevelAt(e->globalPos.toPoint()); + QPointF localPoint = e->localPos; QPointF globalPoint = e->globalPos;