Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6fad2d1b1bdba6bf35f2e24987ac2a4f3bd45827
      
https://github.com/WebKit/WebKit/commit/6fad2d1b1bdba6bf35f2e24987ac2a4f3bd45827
  Author: Alex Christensen <[email protected]>
  Date:   2022-12-15 (Thu, 15 Dec 2022)

  Changed paths:
    M Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp
    M Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePage.h
    M Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
    M Source/WebKit/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit/WebProcess/WebPage/WebPage.h
    M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
    A Tools/TestWebKitAPI/Tests/WebKitCocoa/SkipDecidePolicyForResponsePlugIn.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm
    M Tools/TestWebKitAPI/cocoa/HTTPServer.mm

  Log Message:
  -----------
  Add bundle SPI to skip decidePolicyForNavigationResponse in some cases
https://bugs.webkit.org/show_bug.cgi?id=249334
rdar://102709433

Reviewed by Geoffrey Garen.

This is not ideal, but it's not as bad as bringing WKBundlePagePolicyClient 
back and hooking it up.
This is needed to fix a performance regression.  It restores pre-existing 
behavior.
We should consider going from the network process to the UI process without 
hopping through the web
process for navigation responses to prevent the need for strange performance 
optimizations like this.

* Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageSetSkipDecidePolicyForResponseIfPossible):
* Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::shouldSkipDecidePolicyForResponse const):
* Source/WebKit/WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::setSkipDecidePolicyForResponseIfPossible):
* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/SkipDecidePolicyForResponsePlugIn.mm: 
Added.
(-[SkipDecidePolicyForResponsePlugIn 
webProcessPlugIn:didCreateBrowserContextController:]):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
(TEST):
* Tools/TestWebKitAPI/cocoa/HTTPServer.mm:
(TestWebKitAPI::statusText):

Canonical link: https://commits.webkit.org/257942@main


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to