Details
-
Bug
-
Resolution: Won't Do
-
P3: Somewhat important
-
None
-
4.6.2, 4.7.0
-
None
Description
Here's a temporary patch for this:
diff --git a/src/gui/widgets/qmenu.cpp b/src/gui/widgets/qmenu.cpp index 42b7406..8da90bc 100644 --- a/src/gui/widgets/qmenu.cpp +++ b/src/gui/widgets/qmenu.cpp @@ -66,6 +66,7 @@ #include "qwidgetaction.h" #include "qtoolbutton.h" #include "qpushbutton.h" +#include "private/qapplication_p.h" #include <private/qpushbutton_p.h> #include <private/qaction_p.h> #include <private/qsoftkeymanager_p.h> @@ -2281,6 +2282,10 @@ void QMenu::mousePressEvent(QMouseEvent *e) setAttribute(Qt::WA_NoMouseReplay); if (d->eventLoop) // synchronous operation d->syncAction = 0; + QWidget* widgetUnderMouse = QApplication::widgetAt( mapToGlobal(e->pos()) ); + if ( widgetUnderMouse ) { + QApplicationPrivate::dispatchEnterLeave(widgetUnderMouse, this) + } d->hideUpToMenuBar(); return; }