Pārlūkot izejas kodu

cocoa: Send a maximized event instead of restored if a deminiaturized window is zoomed

Frank Praznik 1 gadu atpakaļ
vecāks
revīzija
fe85e6e754
1 mainītis faili ar 6 papildinājumiem un 1 dzēšanām
  1. 6 1
      src/video/cocoa/SDL_cocoawindow.m

+ 6 - 1
src/video/cocoa/SDL_cocoawindow.m

@@ -955,7 +955,12 @@ static void Cocoa_SendExposedEventIfVisible(SDL_Window *window)
 
 - (void)windowDidDeminiaturize:(NSNotification *)aNotification
 {
-    SDL_SendWindowEvent(_data.window, SDL_EVENT_WINDOW_RESTORED, 0, 0);
+    /* isZoomed always returns true if the window is not resizable */
+    if ((_data.window->flags & SDL_WINDOW_RESIZABLE) && [_data.nswindow isZoomed]) {
+        SDL_SendWindowEvent(_data.window, SDL_EVENT_WINDOW_MAXIMIZED, 0, 0);
+    } else {
+        SDL_SendWindowEvent(_data.window, SDL_EVENT_WINDOW_RESTORED, 0, 0);
+    }
 }
 
 - (void)windowDidBecomeKey:(NSNotification *)aNotification