Fix unnecessary enter leave events
authorJorgen Lind <jorgen.lind@theqtcompany.com>
Mon, 15 Jun 2015 15:57:20 +0000 (17:57 +0200)
committerJørgen Lind <jorgen.lind@theqtcompany.com>
Thu, 20 Aug 2015 10:37:20 +0000 (10:37 +0000)
Task-number: QTBUG-45565
Change-Id: I92c1dc0a14440259349eeae40372221dbc3c548f
Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
src/widgets/kernel/qwidgetwindow.cpp

index d4e73bcac458d955526e99f5b94e23d926f1ebf3..24ef7de1cfb9200fbf760155b28a5a9196be6186 100644 (file)
@@ -445,11 +445,11 @@ void QWidgetWindow::handleMouseEvent(QMouseEvent *event)
                 receiver = popupChild;
             if (receiver != popup)
                 widgetPos = receiver->mapFromGlobal(event->globalPos());
-            QWidget *alien = m_widget->childAt(m_widget->mapFromGlobal(event->globalPos()));
+            QWidget *alien = receiver->childAt(receiver->mapFromGlobal(event->globalPos()));
             QMouseEvent e(event->type(), widgetPos, event->windowPos(), event->screenPos(), event->button(), event->buttons(), event->modifiers());
             QGuiApplicationPrivate::setMouseEventSource(&e, QGuiApplicationPrivate::mouseEventSource(event));
             e.setTimestamp(event->timestamp());
-            QApplicationPrivate::sendMouseEvent(receiver, &e, alien, m_widget, &qt_button_down, qt_last_mouse_receiver);
+            QApplicationPrivate::sendMouseEvent(receiver, &e, alien, receiver->window(), &qt_button_down, qt_last_mouse_receiver);
             qt_last_mouse_receiver = receiver;
         } else {
             // close disabled popups when a mouse button is pressed or released