Details
-
Bug
-
Resolution: Done
-
P2: Important
-
4.6.2
-
None
-
7ed3e0085331e911b231d26c58a4e09e0e7aeffb
Description
Results from QTBUG-8972.
See the attached sample code. QCoreApplication::sendPostedEvents doesn't get called for the 2nd emitted signal.
Because in the function qt_GetMessageHook in qeventdispatcher_win.cpp, the call to GetQueueStatus(QS_TIMER) almost always returns true.
This is the case, because the implementation of Windows mobile menus seems to use WM_TIMER messages internally, which are seen by GetQueueStatus, but will never reach our application. Thus, we don't post the WM_QT_SENDPOSTEDEVENTS message. (Every Qt application on Win mobile has a default menu, even if its not visible.)
When the user clicks into the window, we receive a mouse message and call qt_GetMessageHook again.