Commit 8b2a6e7f authored by Jérôme Lebel's avatar Jérôme Lebel Committed by Commit Bot

[iOS] Adding APIs to support multiwindow with SSO

Adding APIs declaration to support multi windows with SSO.

For ChromeIdentityService:
bool HandleSessionOpenURLContexts(UIScene* scene, NSSet*)
void ApplicationDidDiscardSceneSessions(NSSet*)


=> crrev.com/c/2316308 API declarations
 * crrev.com/i/3182384 Implementing APIs
 * crrev.com/c/2317321 Switching code to use the new APIs

Bug: 1103833
Change-Id: I28b5f6c98c23d9c1424500816bf713756bab4c05
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2316308Reviewed-by: default avatarNohemi Fernandez <fernandex@chromium.org>
Commit-Queue: Jérôme Lebel <jlebel@chromium.org>
Auto-Submit: Jérôme Lebel <jlebel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#792196}
parent b9f1aa01
...@@ -26,6 +26,7 @@ class ChromeBrowserState; ...@@ -26,6 +26,7 @@ class ChromeBrowserState;
@class UIApplication; @class UIApplication;
@class UIImage; @class UIImage;
@class UINavigationController; @class UINavigationController;
@class UIScene;
@class UIViewController; @class UIViewController;
namespace ios { namespace ios {
...@@ -102,11 +103,22 @@ class ChromeIdentityService { ...@@ -102,11 +103,22 @@ class ChromeIdentityService {
// Handles open URL authentication callback. Returns whether the URL was // Handles open URL authentication callback. Returns whether the URL was
// actually handled. This should be called within // actually handled. This should be called within
// UIApplicationDelegate application:openURL:options:. // -[<UIApplicationDelegate> application:openURL:options:].
virtual bool HandleApplicationOpenURL(UIApplication* application, virtual bool HandleApplicationOpenURL(UIApplication* application,
NSURL* url, NSURL* url,
NSDictionary* options); NSDictionary* options);
// Handles open URL authentication callback. Returns whether the URL was
// actually handled. This should be called within
// -[<UISceneDelegate> application:openURLContexts:].
virtual bool HandleSessionOpenURLContexts(UIScene* scene, NSSet* url_contexts)
API_AVAILABLE(ios(13.0));
// Discards scene session data.This should be called within
// -[<UIApplicationDelegate> application:didDiscardSceneSessions:].
virtual void ApplicationDidDiscardSceneSessions(NSSet* scene_sessions)
API_AVAILABLE(ios(13.0));
// Dismisses all the dialogs created by the abstracted flows. // Dismisses all the dialogs created by the abstracted flows.
virtual void DismissDialogs(); virtual void DismissDialogs();
......
...@@ -30,6 +30,14 @@ bool ChromeIdentityService::HandleApplicationOpenURL(UIApplication* application, ...@@ -30,6 +30,14 @@ bool ChromeIdentityService::HandleApplicationOpenURL(UIApplication* application,
return false; return false;
} }
bool ChromeIdentityService::HandleSessionOpenURLContexts(UIScene* scene,
NSSet* URLContexts) {
return false;
}
void ChromeIdentityService::ApplicationDidDiscardSceneSessions(
NSSet* scene_sessions) {}
DismissASMViewControllerBlock DismissASMViewControllerBlock
ChromeIdentityService::PresentAccountDetailsController( ChromeIdentityService::PresentAccountDetailsController(
ChromeIdentity* identity, ChromeIdentity* identity,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment