summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Lantinga <slouken@libsdl.org>2021-02-01 22:35:46 -0800
committerSam Lantinga <slouken@libsdl.org>2021-02-01 22:35:46 -0800
commit7b5c7fc2659f7d20ddbe0d4117dd2cfce1ca619d (patch)
tree5e24572df2c53c69c09c44b8719de19e1ab7eb99
parentefacab21e7fbfcb6bcd27ee241266c101677fc9f (diff)
downloadsdl-7b5c7fc2659f7d20ddbe0d4117dd2cfce1ca619d.tar.gz
Fixed bug 5471 - Creating a fullscreen desktop window goes windowed temporarily
This is caused by the Metal renderer recreating the window because by default we create an OpenGL window on macOS. It turns out that at least on macOS 10.15, a window that has been initialized for OpenGL can also be used with Metal. So we'll skip recreating the window in that case.
-rw-r--r--src/render/metal/SDL_render_metal.m2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/render/metal/SDL_render_metal.m b/src/render/metal/SDL_render_metal.m
index 67ac1b663..32c1c48b2 100644
--- a/src/render/metal/SDL_render_metal.m
+++ b/src/render/metal/SDL_render_metal.m
@@ -1674,7 +1674,7 @@ METAL_CreateRenderer(SDL_Window * window, Uint32 flags)
}
window_flags = SDL_GetWindowFlags(window);
- if (!(window_flags & SDL_WINDOW_METAL)) {
+ if (!(window_flags & (SDL_WINDOW_METAL|SDL_WINDOW_OPENGL))) {
changed_window = SDL_TRUE;
if (SDL_RecreateWindow(window, (window_flags & ~(SDL_WINDOW_VULKAN | SDL_WINDOW_OPENGL)) | SDL_WINDOW_METAL) < 0) {
return NULL;