Improve Qt::WA_UnderMouse accuracy
authorMiikka Heikkinen <miikka.heikkinen@digia.com>
Fri, 12 Oct 2012 12:28:55 +0000 (15:28 +0300)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Mon, 15 Oct 2012 19:11:57 +0000 (21:11 +0200)
commit698d5a2b9f3df52fb6c4e178d50d2743db000b3d
tree6934576561eaf684c135bbaf2238b2f344a2ec6e
parent21b5c1d4a9e00d01d69e5801f051ee8660b76d5c
Improve Qt::WA_UnderMouse accuracy

Qt::WA_UnderMouse is set/cleared when widgets get enter/leave events.
When there is a popup active, Qt::WA_UnderMouse should always report
false, but this was not happening, because existing state was not
cleared when popup was opened.

Dispatch a leave event for last mouse receiver when a popup is
opened to update the Qt::WA_UnderMouse state. This is roughly
equivalent to what happens on Qt4.

Task-number: QTBUG-27478
Change-Id: I7739e75727213e748ab2f42f1027d32325d89fb0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
src/widgets/kernel/qapplication_qpa.cpp
tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp