Browse Source

cocoa: Don't overwrite the desktop mode when changing the fullscreen mode

Changing the mode triggers a display reconfiguration event, which will overwrite the desktop mode with the set fullscreen mode, preventing proper restoration when leaving fullscreen. Don't overwrite the desktop mode if the reconfiguration is due to a fullscreen mode switch.

(cherry picked from commit b69201daebfe0e7e0e59cd5fe0f4a24a07d5ae60)
Frank Praznik 1 month ago
parent
commit
6a9e970880
1 changed files with 1 additions and 1 deletions
  1. 1 1
      src/video/cocoa/SDL_cocoamodes.m

+ 1 - 1
src/video/cocoa/SDL_cocoamodes.m

@@ -433,7 +433,7 @@ static void Cocoa_DisplayReconfigurationCallback(CGDirectDisplayID displayid, CG
         }
     }
 
-    if (flags & kCGDisplaySetModeFlag) {
+    if ((flags & kCGDisplaySetModeFlag) && !_this->setting_display_mode) {
         if (display) {
             CGDisplayModeRef moderef = CGDisplayCopyDisplayMode(displayid);
             if (moderef) {