Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 538b503285b8484286ba03b3a0e7c96279f7f7a8 https://github.com/WebKit/WebKit/commit/538b503285b8484286ba03b3a0e7c96279f7f7a8 Author: Alex Christensen <achristen...@apple.com> Date: 2023-05-10 (Wed, 10 May 2023)
Changed paths: M Source/WebKit/Shared/FrameInfoData.h M Source/WebKit/Shared/FrameInfoData.serialization.in M Source/WebKit/UIProcess/API/APIFrameInfo.h M Source/WebKit/UIProcess/API/APIFrameTreeNode.h M Source/WebKit/UIProcess/API/Cocoa/WKFrameInfo.mm M Source/WebKit/UIProcess/API/Cocoa/WKFrameInfoPrivate.h M Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm M Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h M Source/WebKit/UIProcess/API/Cocoa/_WKFrameTreeNode.h M Source/WebKit/UIProcess/API/Cocoa/_WKFrameTreeNode.mm M Source/WebKit/UIProcess/Cocoa/UIDelegate.mm M Source/WebKit/UIProcess/ProvisionalPageProxy.cpp M Source/WebKit/UIProcess/WebPageProxy.cpp M Source/WebKit/UIProcess/WebPageProxy.h M Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp M Source/WebKit/WebProcess/WebPage/WebFrame.cpp M Source/WebKit/WebProcess/WebPage/WebFrame.h M Source/WebKit/WebProcess/WebPage/WebPage.cpp M Source/WebKit/WebProcess/WebPage/WebPage.h M Source/WebKit/WebProcess/WebPage/WebPage.messages.in M Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm Log Message: ----------- Add test SPI to see the entire frame trees in all processes for site isolation https://bugs.webkit.org/show_bug.cgi?id=256574 rdar://109134755 Reviewed by J Pascoe and Youenn Fablet. WKWebView._frames gets info about the frame tree from whatever process each frame is in. In order to add tests that verifies the whole frame tree state in multiple process during operations like frame destruction, we need to get the whole frame tree state from each process and inspect all of it. This introduces such SPI and uses it for tests. * Source/WebKit/Shared/FrameInfoData.h: * Source/WebKit/Shared/FrameInfoData.serialization.in: * Source/WebKit/UIProcess/API/APIFrameInfo.h: * Source/WebKit/UIProcess/API/APIFrameTreeNode.h: * Source/WebKit/UIProcess/API/Cocoa/WKFrameInfo.mm: (-[WKFrameInfo _isLocalFrame]): * Source/WebKit/UIProcess/API/Cocoa/WKFrameInfoPrivate.h: * Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _frames:]): (-[WKWebView _frameTrees:]): * Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h: * Source/WebKit/UIProcess/API/Cocoa/_WKFrameTreeNode.h: * Source/WebKit/UIProcess/API/Cocoa/_WKFrameTreeNode.mm: (-[_WKFrameTreeNode info]): (-[_WKFrameTreeNode _isLocalFrame]): * Source/WebKit/UIProcess/Cocoa/UIDelegate.mm: (WebKit::UIDelegate::UIClient::promptForDisplayCapturePermission): (WebKit::UIDelegate::UIClient::decidePolicyForUserMediaPermissionRequest): * Source/WebKit/UIProcess/ProvisionalPageProxy.cpp: (WebKit::ProvisionalPageProxy::cancel): * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::getAllFrameTrees): * Source/WebKit/UIProcess/WebPageProxy.h: * Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): * Source/WebKit/WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::info const): (WebKit::WebFrame::frameTreeData const): * Source/WebKit/WebProcess/WebPage/WebFrame.h: * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::getFrameTree): * Source/WebKit/WebProcess/WebPage/WebPage.h: * Source/WebKit/WebProcess/WebPage/WebPage.messages.in: * Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm: (TestWebKitAPI::nullTerminatedIndentation): (TestWebKitAPI::debugPrint): (TestWebKitAPI::frameTreesMatch): (TestWebKitAPI::checkFrameTreesInProcesses): (TestWebKitAPI::TEST): Canonical link: https://commits.webkit.org/263912@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes