Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1929f1302c0ef91bd357a3df45e76927065874a0
      
https://github.com/WebKit/WebKit/commit/1929f1302c0ef91bd357a3df45e76927065874a0
  Author: Alex Christensen <achristen...@apple.com>
  Date:   2025-08-09 (Sat, 09 Aug 2025)

  Changed paths:
    M LayoutTests/http/tests/contentextensions/injected-script-callback.html
    M 
LayoutTests/http/tests/in-app-browser-privacy/non-app-bound-domain-does-not-get-app-bound-session.html
    M 
LayoutTests/http/tests/in-app-browser-privacy/non-app-bound-iframe-under-app-bound-domain-is-app-bound.html
    M 
LayoutTests/http/tests/security/bypassing-cors-checks-for-extension-urls.html
    M 
LayoutTests/http/tests/site-isolation/mouse-events/iframes-with-tooltips.html
    M LayoutTests/inspector/debugger/scriptParsed.html
    M Source/WebKit/Headers.cmake
    M Source/WebKit/Modules/OSX_Private.modulemap
    M Source/WebKit/Modules/iOS_Private.modulemap
    M Source/WebKit/Shared/API/c/WKBase.h
    M Source/WebKit/Sources.txt
    M Source/WebKit/SourcesCocoa.txt
    M Source/WebKit/UIProcess/API/APIScriptMessage.cpp
    M Source/WebKit/UIProcess/API/APIScriptMessage.h
    M Source/WebKit/UIProcess/API/C/WKAPICast.h
    M Source/WebKit/UIProcess/API/C/WKFrameInfoRef.cpp
    M Source/WebKit/UIProcess/API/C/WKFrameInfoRef.h
    M Source/WebKit/UIProcess/API/C/WKPage.cpp
    M Source/WebKit/UIProcess/API/C/WKPage.h
    M Source/WebKit/UIProcess/API/C/WKPageFullScreenClient.h
    A Source/WebKit/UIProcess/API/C/WKScriptMessageRef.cpp
    A Source/WebKit/UIProcess/API/C/WKScriptMessageRef.h
    M Source/WebKit/UIProcess/API/C/WKUserContentControllerRef.cpp
    M Source/WebKit/UIProcess/API/C/WKUserContentControllerRef.h
    M Source/WebKit/UIProcess/API/C/WKUserScriptRef.cpp
    M Source/WebKit/UIProcess/API/C/WKUserScriptRef.h
    M Source/WebKit/UIProcess/API/Cocoa/WKUserContentController.mm
    M Source/WebKit/UIProcess/XR/openxr/PlatformXRSystemOpenXR.cpp
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj
    M Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl
    M Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp
    M Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp
    M Tools/WebKitTestRunner/InjectedBundle/TestRunner.h
    M Tools/WebKitTestRunner/TestController.cpp
    M Tools/WebKitTestRunner/TestController.h
    M Tools/WebKitTestRunner/TestInvocation.cpp
    M Tools/WebKitTestRunner/TestInvocation.h
    M Tools/WebKitTestRunner/TestOptions.cpp
    M Tools/WebKitTestRunner/TestOptions.h

  Log Message:
  -----------
  Begin replacing WebKitTestRunner injected bundle use with a UI-process 
alternative that works with site isolation
https://bugs.webkit.org/show_bug.cgi?id=297156
rdar://157892436

Reviewed by Ryosuke Niwa.

Instead of using cacheTestRunnerCallback and callTestRunnerCallback to cache 
state in the injected bundle,
use a WKUserScript to set up the function to post a message to the UI process, 
keep the state in the UI process
including which frame and how to call the callback, then use it when we get a 
callback.

* LayoutTests/http/tests/site-isolation/mouse-events/iframes-with-tooltips.html:
* Source/WebKit/Modules/OSX_Private.modulemap:
* Source/WebKit/Modules/iOS_Private.modulemap:
* Source/WebKit/Shared/API/c/WKBase.h:
* Source/WebKit/Sources.txt:
* Source/WebKit/UIProcess/API/APIScriptMessage.cpp:
(API::ScriptMessage::ScriptMessage):
(API::ScriptMessage::page const):
* Source/WebKit/UIProcess/API/APIScriptMessage.h:
* Source/WebKit/UIProcess/API/C/WKAPICast.h:
* Source/WebKit/UIProcess/API/C/WKFrameInfoRef.cpp:
(WKFrameInfoGetPage):
* Source/WebKit/UIProcess/API/C/WKFrameInfoRef.h:
* Source/WebKit/UIProcess/API/C/WKPage.cpp:
(CompletionListener::create):
(CompletionListener::complete):
(CompletionListener::CompletionListener):
(WKCompletionListenerComplete):
(WKPageSetFullScreenClientForTesting):
(WKPageSetPageUIClient):
(WKPageEvaluateJavaScriptInMainFrame):
(WKPageEvaluateJavaScriptInFrame):
* Source/WebKit/UIProcess/API/C/WKPage.h:
* Source/WebKit/UIProcess/API/C/WKPageFullScreenClient.h:
* Source/WebKit/UIProcess/API/C/WKScriptMessageRef.cpp: Copied from 
Source/WebKit/UIProcess/API/C/WKFrameInfoRef.h.
(WKScriptMessageGetTypeID):
(WKScriptMessageGetBody):
(WKScriptMessageGetFrameInfo):
* Source/WebKit/UIProcess/API/C/WKScriptMessageRef.h: Copied from 
Source/WebKit/UIProcess/API/C/WKFrameInfoRef.h.
* Source/WebKit/UIProcess/API/C/WKUserContentControllerRef.cpp:
(WebScriptMessageClient::WebScriptMessageClient):
(WKUserContentControllerAddScriptMessageHandler):
* Source/WebKit/UIProcess/API/C/WKUserContentControllerRef.h:
* Source/WebKit/UIProcess/API/C/WKUserScriptRef.cpp:
(WKUserScriptCreate): Deleted.
* Source/WebKit/UIProcess/API/C/WKUserScriptRef.h:
* Source/WebKit/UIProcess/API/Cocoa/WKUserContentController.mm:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::runJavaScriptInMainFrame): Deleted.
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
* Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::installTooltipDidChangeCallback): Deleted.
(WTR::TestRunner::callTooltipDidChangeCallback): Deleted.
* Tools/WebKitTestRunner/InjectedBundle/TestRunner.h:
* Tools/WebKitTestRunner/TestController.cpp:
(WTR::requestPointerLock):
(WTR::TestController::tooltipDidChange):
(WTR::TestController::willEnterFullScreen):
(WTR::TestController::beganExitFullScreen):
(WTR::TestController::listenForTooltipChanges):
(WTR::TestController::resetStateToConsistentValues):
* Tools/WebKitTestRunner/TestController.h:
* Tools/WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::tooltipDidChange): Deleted.
* Tools/WebKitTestRunner/TestInvocation.h:
* Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::tooltipRegistrationCallback):
(WTR::TestController::platformCreateWebView):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to