Ver código fonte

Use the default window focus behavior on macOS

We had to work around odd behavior in really old versions of macOS, but the current behavior is great.

Fixes https://github.com/libsdl-org/SDL/issues/3954
Sam Lantinga 1 dia atrás
pai
commit
bce2a336d2
1 arquivos alterados com 4 adições e 11 exclusões
  1. 4 11
      src/video/cocoa/SDL_cocoaevents.m

+ 4 - 11
src/video/cocoa/SDL_cocoaevents.m

@@ -261,11 +261,10 @@ static void Cocoa_DispatchEvent(NSEvent *theEvent)
         return;
     }
 
+    // Restore any fullscreen window
     device = SDL_GetVideoDevice();
     if (device && device->windows) {
-        SDL_Window *window = device->windows;
-        int i;
-        for (i = 0; i < device->num_displays; ++i) {
+        for (int i = 0; i < device->num_displays; ++i) {
             SDL_Window *fullscreen_window = device->displays[i]->fullscreen_window;
             if (fullscreen_window) {
                 if (fullscreen_window->flags & SDL_WINDOW_MINIMIZED) {
@@ -274,12 +273,6 @@ static void Cocoa_DispatchEvent(NSEvent *theEvent)
                 return;
             }
         }
-
-        if (window->flags & SDL_WINDOW_MINIMIZED) {
-            SDL_RestoreWindow(window);
-        } else {
-            SDL_RaiseWindow(window);
-        }
     }
 }
 
@@ -370,9 +363,9 @@ static void Cocoa_DispatchEvent(NSEvent *theEvent)
 
 - (IBAction)menu:(id)sender
 {
-	SDL_TrayEntry *entry = [[sender representedObject] pointerValue];
+    SDL_TrayEntry *entry = [[sender representedObject] pointerValue];
 
-	SDL_ClickTrayEntry(entry);
+    SDL_ClickTrayEntry(entry);
 }
 
 @end