From 031348d377dad25573f7cce1ee1c9385df1b05a7 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Tue, 28 Feb 2023 09:02:01 -0800
Subject: [PATCH] Fixed SDL windows getting the maximized state after leaving
fullscreen on macOS
(cherry picked from commit 2df08fb1b27b721998a1380a2acdbe1494b5591e)
---
src/video/cocoa/SDL_cocoawindow.m | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/video/cocoa/SDL_cocoawindow.m b/src/video/cocoa/SDL_cocoawindow.m
index a6d8ebf7d3c6..634f8553b466 100644
--- a/src/video/cocoa/SDL_cocoawindow.m
+++ b/src/video/cocoa/SDL_cocoawindow.m
@@ -817,7 +817,12 @@ - (void)windowDidResize:(NSNotification *)aNotification
SDL_SendWindowEvent(window, SDL_WINDOWEVENT_MOVED, x, y);
SDL_SendWindowEvent(window, SDL_WINDOWEVENT_RESIZED, w, h);
- zoomed = [nswindow isZoomed];
+ /* isZoomed always returns true if the window is not resizable */
+ if ((window->flags & SDL_WINDOW_RESIZABLE) && [nswindow isZoomed]) {
+ zoomed = YES;
+ } else {
+ zoomed = NO;
+ }
if (!zoomed) {
SDL_SendWindowEvent(window, SDL_WINDOWEVENT_RESTORED, 0, 0);
} else if (zoomed) {