]> git.saurik.com Git - wxWidgets.git/commitdiff
changing to allow for 2x ramping up NSApp run
authorStefan Csomor <csomor@advancedconcepts.ch>
Sun, 28 Jul 2013 14:37:37 +0000 (14:37 +0000)
committerStefan Csomor <csomor@advancedconcepts.ch>
Sun, 28 Jul 2013 14:37:37 +0000 (14:37 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/osx/cocoa/utils.mm

index fbed3e18567ec96d81e08605880dd58e25a95b1f..3e07d7dc2c08642ddc5ac0fc39688ce378687884 100644 (file)
@@ -242,21 +242,39 @@ void wxBell()
 // here we subclass NSApplication, for the purpose of being able to override sendEvent.
 @interface wxNSApplication : NSApplication
 {
+    BOOL firstPass;
 }
 
+- (id)init;
+
 - (void)sendEvent:(NSEvent *)anEvent;
 
 @end
 
 @implementation wxNSApplication
 
+- (id)init
+{
+    self = [super init];
+    firstPass = YES;
+    return self;
+}
+
 /* This is needed because otherwise we don't receive any key-up events for command-key
  combinations (an AppKit bug, apparently)                      */
 - (void)sendEvent:(NSEvent *)anEvent
 {
     if ([anEvent type] == NSKeyUp && ([anEvent modifierFlags] & NSCommandKeyMask))
         [[self keyWindow] sendEvent:anEvent];
-    else [super sendEvent:anEvent];
+    else
+        [super sendEvent:anEvent];
+    
+    if ( firstPass )
+    {
+        [NSApp stop:nil];
+        firstPass = NO;
+        return;
+    }
 }
 
 @end
@@ -293,6 +311,14 @@ bool wxApp::DoInitGui()
     return true;
 }
 
+bool wxApp::CallOnInit()
+{
+    wxMacAutoreleasePool autoreleasepool;
+    m_onInitResult = false;
+    [NSApp run];
+    return m_onInitResult; 
+}
+
 void wxApp::DoCleanUp()
 {
     if ( appcontroller != nil )