]> git.saurik.com Git - wxWidgets.git/commitdiff
Added lengthy comment detailing the implications of idle handling
authorDavid Elliott <dfe@tgwbd.org>
Thu, 9 Oct 2003 15:59:37 +0000 (15:59 +0000)
committerDavid Elliott <dfe@tgwbd.org>
Thu, 9 Oct 2003 15:59:37 +0000 (15:59 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24137 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/cocoa/app.mm

index 54d1f422672b7423f26db2147f83695d8b385e1d..6a2c443ac43f04068e1ec0fda2f59e1c9210a57a 100644 (file)
@@ -239,6 +239,16 @@ void wxApp::CocoaInstallIdleHandler()
     // Call doIdle for EVERYTHING dammit
 // We'd need Foundation/NSConnection.h for this next constant, do we need it?
     [[ NSRunLoop currentRunLoop ] performSelector:@selector(doIdle:) target:m_cocoaAppDelegate argument:NULL order:0 modes:[NSArray arrayWithObjects:NSDefaultRunLoopMode, /* NSConnectionReplyRunLoopMode,*/ NSModalPanelRunLoopMode, /**/NSEventTrackingRunLoopMode,/**/ nil] ];
+    /* Notes:
+    In the Mac OS X implementation of Cocoa, the above method schedules
+    doIdle: to be called from *within* [NSApplication
+    -nextEventMatchingMask:untilDate:inMode:dequeue:].  That is, no
+    NSEvent object is generated and control does not return from that
+    method.  In fact, control will only return from that method for the
+    usual reasons (e.g. a real event is received or the untilDate is reached).
+    This has implications when trying to stop the event loop and return to
+    its caller.  See wxEventLoop::Exit
+    */
 }
 
 void wxApp::CocoaDelegate_applicationWillBecomeActive()