diff --git a/Source/WebKit/Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h b/Source/WebKit/Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h index 972bb5aeac7a..e95950703345 100644 --- a/Source/WebKit/Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h +++ b/Source/WebKit/Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h @@ -275,6 +275,10 @@ typedef NS_ENUM(NSInteger, ASCredentialRequestStyle) { @property (nonatomic) ASCredentialRequestStyle requestStyle; @property (nonatomic, nullable, copy) ASGlobalFrameIdentifier *globalFrameID; + +#if TARGET_OS_IOS +@property (nonatomic, copy) NSString *windowSceneIdentifier; +#endif @end @protocol ASCCredentialProtocol diff --git a/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm b/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm index ae4efbf48fe2..848818afe057 100644 --- a/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm +++ b/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm @@ -30,6 +30,7 @@ #import "LocalService.h" #import "Logging.h" +#import "PageClient.h" #import "WKError.h" #import "WebAuthenticationRequestData.h" #import "WebPageProxy.h" @@ -500,6 +501,8 @@ static inline void continueAfterRequest(RetainPtr> cr } #endif // PLATFORM(MAC) || PLATFORM(MACCATALYST) #if PLATFORM(IOS) + requestContext.get().windowSceneIdentifier = m_webPageProxy.pageClient().sceneID(); + [m_proxy performAuthorizationRequestsForContext:requestContext.get() withCompletionHandler:makeBlockPtr([weakThis = WeakPtr { *this }, handler = WTFMove(handler)](id credential, NSError *error) mutable { callOnMainRunLoop([weakThis, handler = WTFMove(handler), credential = retainPtr(credential), error = retainPtr(error)] () mutable { #elif PLATFORM(MAC)