diff options
author | Benjamin Poulain <benjamin.poulain@nokia.com> | 2009-09-21 11:58:21 +0200 |
---|---|---|
committer | Benjamin Poulain <benjamin.poulain@nokia.com> | 2009-09-21 12:07:34 +0200 |
commit | b0016ea9a6b225757e3ee06b50e8f7d05463ddf7 (patch) | |
tree | 7a4f640566155323bf900cc5fa7bb9fb2e93260a /src/gui/kernel/qeventdispatcher_mac_p.h | |
parent | 74bd11b55388ca6a8e5cfdbdcfb044bb538fafa0 (diff) | |
download | qt4-tools-b0016ea9a6b225757e3ee06b50e8f7d05463ddf7.tar.gz |
On Mac, the posted events are processed on the first time in the loop
On Mac OS X, we use a custom source for posted events.
The first time the event loop is entered, the custom source is added
to the native event dispatcher but the events are not processed. In Qt,
we expect those events to be processed.
To work around the problem, a new observer is added to the event loop.
This observer is only triggered the first time the event loop is
entered. When the observer is triggered, the posted events are sent.
Task-number: QTBUG-4521
Reviewed-by: Richard Moe Gustavsen
Reviewed-by: João Abecasis
Diffstat (limited to 'src/gui/kernel/qeventdispatcher_mac_p.h')
-rw-r--r-- | src/gui/kernel/qeventdispatcher_mac_p.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gui/kernel/qeventdispatcher_mac_p.h b/src/gui/kernel/qeventdispatcher_mac_p.h index e94d98a024..15bc6f8e6f 100644 --- a/src/gui/kernel/qeventdispatcher_mac_p.h +++ b/src/gui/kernel/qeventdispatcher_mac_p.h @@ -196,6 +196,7 @@ private: static void activateTimer(CFRunLoopTimerRef, void *info); static void waitingObserverCallback(CFRunLoopObserverRef observer, CFRunLoopActivity activity, void *info); + static void firstLoopEntry(CFRunLoopObserverRef ref, CFRunLoopActivity activity, void *info); }; #ifdef QT_MAC_USE_COCOA |