浏览代码

Revert "cocoa: Don't re-enter a fullscreen space if leaving to enter an exclusive mode"

This reverts commit ee8f2861e71f549a33af8ce9958b74515eee6b81.

It turns out that the problem is elsewhere, related to needing to block mode changes until spaces transitions are complete.
Frank Praznik 1 月之前
父节点
当前提交
3163e0cc9f
共有 1 个文件被更改,包括 2 次插入8 次删除
  1. 2 8
      src/video/SDL_video.c

+ 2 - 8
src/video/SDL_video.c

@@ -1927,15 +1927,11 @@ bool SDL_UpdateFullscreenMode(SDL_Window *window, SDL_FullscreenOp fullscreen, b
             goto done;
         }
         if (commit) {
-            bool skip_spaces_switch = false;
             // If we're switching between a fullscreen Space and exclusive fullscreen, we need to get back to normal first.
             if (fullscreen && Cocoa_IsWindowInFullscreenSpace(window) && !window->last_fullscreen_exclusive_display && window->fullscreen_exclusive) {
                 if (!Cocoa_SetWindowFullscreenSpace(window, false, true)) {
                     goto error;
                 }
-
-                // We just left spaces to go to an exclusive mode, so don't try to re-enter.
-                skip_spaces_switch = true;
             } else if (fullscreen && window->last_fullscreen_exclusive_display && !window->fullscreen_exclusive) {
                 for (i = 0; i < _this->num_displays; ++i) {
                     SDL_VideoDisplay *last_display = _this->displays[i];
@@ -1949,10 +1945,8 @@ bool SDL_UpdateFullscreenMode(SDL_Window *window, SDL_FullscreenOp fullscreen, b
                 }
             }
 
-            if (!skip_spaces_switch) {
-                if (Cocoa_SetWindowFullscreenSpace(window, !!fullscreen, syncHint)) {
-                    goto done;
-                }
+            if (Cocoa_SetWindowFullscreenSpace(window, !!fullscreen, syncHint)) {
+                goto done;
             }
         }
     }