From a446381ea9023197491fd66328c1b4c8f6da8a53 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Tue, 14 Jan 2025 23:28:00 -0800
Subject: [PATCH] Tooltips and unfocusable windows can't become main windows
---
src/video/cocoa/SDL_cocoawindow.m | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/video/cocoa/SDL_cocoawindow.m b/src/video/cocoa/SDL_cocoawindow.m
index 2ca579513d57c..947db1e976c42 100644
--- a/src/video/cocoa/SDL_cocoawindow.m
+++ b/src/video/cocoa/SDL_cocoawindow.m
@@ -36,7 +36,9 @@
#include "SDL_cocoaopengles.h"
#include "SDL_cocoavideo.h"
-// #define DEBUG_COCOAWINDOW
+#if 0
+#define DEBUG_COCOAWINDOW
+#endif
#ifdef DEBUG_COCOAWINDOW
#define DLog(fmt, ...) printf("%s: " fmt "\n", __func__, ##__VA_ARGS__)
@@ -125,7 +127,7 @@ - (BOOL)canBecomeKeyWindow
- (BOOL)canBecomeMainWindow
{
SDL_Window *window = [self findSDLWindow];
- if (window && !SDL_WINDOW_IS_POPUP(window)) {
+ if (window && !(window->flags & (SDL_WINDOW_TOOLTIP | SDL_WINDOW_NOT_FOCUSABLE)) && !SDL_WINDOW_IS_POPUP(window)) {
return YES;
} else {
return NO;