[webkit-changes] [WebKit/WebKit] 2d9f08: Implement parent frame navigating cross-origin sit...
Alex Christensen
noreply at github.com
Tue Jul 11 12:52:36 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 2d9f08c1837f9690fba5be2fa56c2858e57855b6
https://github.com/WebKit/WebKit/commit/2d9f08c1837f9690fba5be2fa56c2858e57855b6
Author: Alex Christensen <achristensen at apple.com>
Date: 2023-07-11 (Tue, 11 Jul 2023)
Changed paths:
M Source/WebCore/page/Page.cpp
M Source/WebCore/page/Page.h
M Source/WebKit/UIProcess/ProvisionalPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/WebProcess/WebPage/WebFrame.cpp
M Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm
Log Message:
-----------
Implement parent frame navigating cross-origin site-isolated iframes
https://bugs.webkit.org/show_bug.cgi?id=259087
rdar://112048587
Reviewed by J Pascoe.
In order to keep track of processes in this case, we need up to 3 different ones:
1. The process that is initiating the navigation. In these cases it is the main frame's process.
2. The process that the frame is navigating away from. This is not always the same as 1,
such as when a cross-origin site-isolated iframe is being navigated by its parent.
3. The process that the frame is navigating to. This can be distinct from the other two.
* Source/WebKit/UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::didCommitLoadForFrame):
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::receivedNavigationPolicyDecision):
(WebKit::WebPageProxy::decidePolicyForNavigationActionAsync):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm:
(TestWebKitAPI::TEST):
Canonical link: https://commits.webkit.org/265960@main
More information about the webkit-changes
mailing list