From f653cf14e398795d096d9992c136eb2a00d0fda5 Mon Sep 17 00:00:00 2001 From: Mahesh Nagpure Date: Tue, 30 Jul 2024 10:38:11 +0530 Subject: [PATCH] Edge browser support for iOS --- .../AppAuth/iOS/OIDExternalUserAgentIOSCustomBrowser.h | 4 ++++ .../AppAuth/iOS/OIDExternalUserAgentIOSCustomBrowser.m | 10 ++++++++++ 2 files changed, 14 insertions(+) diff --git a/Sources/AppAuth/iOS/OIDExternalUserAgentIOSCustomBrowser.h b/Sources/AppAuth/iOS/OIDExternalUserAgentIOSCustomBrowser.h index 2032e8c91..b374a595e 100644 --- a/Sources/AppAuth/iOS/OIDExternalUserAgentIOSCustomBrowser.h +++ b/Sources/AppAuth/iOS/OIDExternalUserAgentIOSCustomBrowser.h @@ -70,6 +70,10 @@ API_UNAVAILABLE(macCatalyst) */ + (instancetype)CustomBrowserSafari; +/*! @brief An instance of @c OIDExternalUserAgentIOSCustomBrowser for Edge. + */ ++ (instancetype)CustomBrowserEdge; + /*! @brief Creates a @c OIDCustomBrowserURLTransformation using the scheme substitution method used iOS browsers like Chrome and Firefox. */ diff --git a/Sources/AppAuth/iOS/OIDExternalUserAgentIOSCustomBrowser.m b/Sources/AppAuth/iOS/OIDExternalUserAgentIOSCustomBrowser.m index be5dc820c..16c931f93 100644 --- a/Sources/AppAuth/iOS/OIDExternalUserAgentIOSCustomBrowser.m +++ b/Sources/AppAuth/iOS/OIDExternalUserAgentIOSCustomBrowser.m @@ -75,6 +75,16 @@ + (instancetype)CustomBrowserSafari { return transform; } ++ (instancetype)CustomBrowserEdge { + OIDCustomBrowserURLTransformation transform = + [[self class] URLTransformationSchemeSubstitutionHTTPS:@"edge-https" HTTP:@"edge-http"]; + NSURL *appStoreURL = + [NSURL URLWithString:@"https://apps.apple.com/us/app/microsoft-edge-web-browser/id1288723196"]; + return [[[self class] alloc] initWithURLTransformation:transform + canOpenURLScheme:@"edge-https" + appStoreURL:appStoreURL]; +} + + (OIDCustomBrowserURLTransformation) URLTransformationSchemeSubstitutionHTTPS:(NSString *)browserSchemeHTTPS HTTP:(nullable NSString *)browserSchemeHTTP {