diff --git a/src/video/cocoa/SDL_cocoaevents.m b/src/video/cocoa/SDL_cocoaevents.m
index b604fd7..17a3183 100644
--- a/src/video/cocoa/SDL_cocoaevents.m
+++ b/src/video/cocoa/SDL_cocoaevents.m
@@ -48,13 +48,12 @@
     SDL_SendQuit();
 }
 
-// Dispatch events here so that we can handle events caught by
-// nextEventMatchingMask in SDL, as well as events caught by other
-// processes (such as CEF) that are passed down to NSApp.
-- (void)sendEvent:(NSEvent *)theEvent
+static SDL_bool s_bShouldHandleEventsInSDLApplication = SDL_FALSE;
+
+static void Cocoa_DispatchEvent(NSEvent *theEvent)
 {
     SDL_VideoDevice *_this = SDL_GetVideoDevice();
-    
+
     switch ([theEvent type]) {
         case NSLeftMouseDown:
         case NSOtherMouseDown:
@@ -77,7 +76,17 @@
         default:
             break;
     }
-    
+}
+
+// Dispatch events here so that we can handle events caught by
+// nextEventMatchingMask in SDL, as well as events caught by other
+// processes (such as CEF) that are passed down to NSApp.
+- (void)sendEvent:(NSEvent *)theEvent
+{
+    if (s_bShouldHandleEventsInSDLApplication) {
+        Cocoa_DispatchEvent(theEvent);
+    }
+
     [super sendEvent:theEvent];
 }
 
@@ -348,6 +357,8 @@
         [SDLApplication sharedApplication];
         SDL_assert(NSApp != nil);
 
+        s_bShouldHandleEventsInSDLApplication = SDL_TRUE;
+
         if (!SDL_GetHintBoolean(SDL_HINT_MAC_BACKGROUND_APP, SDL_FALSE)) {
             [NSApp setActivationPolicy:NSApplicationActivationPolicyRegular];
             [NSApp activateIgnoringOtherApps:YES];
@@ -400,6 +411,10 @@
             break;
         }
 
+        if (!s_bShouldHandleEventsInSDLApplication) {
+            Cocoa_DispatchEvent(event);
+        }
+
         // Pass events down to SDLApplication to be handled in sendEvent:
         [NSApp sendEvent:event];
     }
