SDL: misc: Make SDL_OpenURL work with VisionOS, tvOS, etc.

From 7bbe6025be20c892fbba5678796c77454a8893e4 Mon Sep 17 00:00:00 2001
From: "Ryan C. Gordon" <[EMAIL REDACTED]>
Date: Thu, 26 Dec 2024 14:03:27 -0500
Subject: [PATCH] misc: Make SDL_OpenURL work with VisionOS, tvOS, etc.

---
 src/misc/ios/SDL_sysurl.m | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/src/misc/ios/SDL_sysurl.m b/src/misc/ios/SDL_sysurl.m
index cc340bc350f4e..a2c3d0a3ef68a 100644
--- a/src/misc/ios/SDL_sysurl.m
+++ b/src/misc/ios/SDL_sysurl.m
@@ -29,22 +29,19 @@
 bool SDL_SYS_OpenURL(const char *url)
 {
     @autoreleasepool {
-
-#ifdef SDL_PLATFORM_VISIONOS
-        return SDL_Unsupported();  // openURL is not supported on visionOS
-#else
         NSString *nsstr = [NSString stringWithUTF8String:url];
         NSURL *nsurl = [NSURL URLWithString:nsstr];
         if (![[UIApplication sharedApplication] canOpenURL:nsurl]) {
             return SDL_SetError("No handler registerd for this type of URL");
         }
-        if (@available(iOS 10.0, *)) {
+        if (@available(iOS 10.0, tvOS 10.0, *)) {
             [[UIApplication sharedApplication] openURL:nsurl options:@{} completionHandler:^(BOOL success) {}];
         } else {
+            #ifndef SDL_PLATFORM_VISIONOS   // Fallback is never available in any version of VisionOS (but correct API always is).
             [[UIApplication sharedApplication] openURL:nsurl];
+            #endif
         }
         return true;
-#endif
     }
 }