From bcaedd578112cd501239f45a6ac62ba391952fb9 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Mon, 15 Dec 2025 08:54:55 -0800 Subject: [PATCH] Fixed messageboxes when using window scenes on Apple platforms --- src/video/uikit/SDL_uikitmessagebox.m | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/video/uikit/SDL_uikitmessagebox.m b/src/video/uikit/SDL_uikitmessagebox.m index b96f5fde70..410e79bac8 100644 --- a/src/video/uikit/SDL_uikitmessagebox.m +++ b/src/video/uikit/SDL_uikitmessagebox.m @@ -98,11 +98,19 @@ static BOOL UIKit_ShowMessageBoxAlertController(const SDL_MessageBoxData *messag } if (window == nil || window.rootViewController == nil) { + if (@available(iOS 13.0, tvOS 13.0, *)) { + UIWindowScene *scene = UIKit_GetActiveWindowScene(); + if (scene) { + alertwindow = [[UIWindow alloc] initWithWindowScene:scene]; + } + } + if (!alertwindow) { #ifdef SDL_PLATFORM_VISIONOS - alertwindow = [[UIWindow alloc] init]; + alertwindow = [[UIWindow alloc] init]; #else - alertwindow = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; + alertwindow = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; #endif + } alertwindow.rootViewController = [UIViewController new]; alertwindow.windowLevel = UIWindowLevelAlert;