From 57b20e7b9e35225ffd0aa6439d28a9fb51b2c75f Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Tue, 27 Sep 2022 14:23:42 -0400 Subject: [PATCH] cocoa: Fix new windows setting SDL_WINDOW_BORDERLESS flag incorrectly. Fixes #6172. --- src/video/cocoa/SDL_cocoawindow.m | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/video/cocoa/SDL_cocoawindow.m b/src/video/cocoa/SDL_cocoawindow.m index bc7afce45..02c01bdce 100644 --- a/src/video/cocoa/SDL_cocoawindow.m +++ b/src/video/cocoa/SDL_cocoawindow.m @@ -299,6 +299,9 @@ GetHintCtrlClickEmulateRightClick() static NSUInteger GetWindowWindowedStyle(SDL_Window * window) { + /* IF YOU CHANGE ANY FLAGS IN HERE, PLEASE READ + the NSWindowStyleMaskBorderless comments in SetupWindowData()! */ + /* always allow miniaturization, otherwise you can't programatically minimize the window, whether there's a title bar or not */ NSUInteger style = NSWindowStyleMaskMiniaturizable; @@ -1641,7 +1644,7 @@ SetupWindowData(_THIS, SDL_Window * window, NSWindow *nswindow, NSView *nsview, /* NSWindowStyleMaskBorderless is zero, and it's possible to be Resizeable _and_ borderless, so we can't do a simple bitwise AND of NSWindowStyleMaskBorderless here. */ - if ((style & ~NSWindowStyleMaskResizable) == NSWindowStyleMaskBorderless) { + if ((style & ~(NSWindowStyleMaskResizable|NSWindowStyleMaskMiniaturizable)) == NSWindowStyleMaskBorderless) { window->flags |= SDL_WINDOW_BORDERLESS; } else { window->flags &= ~SDL_WINDOW_BORDERLESS;