Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: ce773e32edaffb27f60e22fc2588041cc5884778
https://github.com/WebKit/WebKit/commit/ce773e32edaffb27f60e22fc2588041cc5884778
Author: Arno Renevier <[email protected]>
Date: 2025-11-19 (Wed, 19 Nov 2025)
Changed paths:
M Source/WebCore/html/HTMLFormElement.h
M Source/WebCore/loader/DocumentLoader.cpp
M Source/WebCore/loader/DocumentLoader.h
M Source/WebCore/loader/EmptyClients.cpp
M Source/WebCore/loader/EmptyFrameLoaderClient.h
M Source/WebCore/loader/FormSubmission.h
M Source/WebCore/loader/FrameLoader.cpp
M Source/WebCore/loader/FrameLoader.h
M Source/WebCore/loader/LocalFrameLoaderClient.h
M Source/WebCore/loader/NavigationScheduler.cpp
M Source/WebCore/loader/PolicyChecker.cpp
M Source/WebCore/loader/PolicyChecker.h
M Source/WebKit/UIProcess/API/APIFormClient.h
M Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
M Source/WebKit/UIProcess/API/Cocoa/_WKInputDelegate.h
M Source/WebKit/UIProcess/API/glib/WebKitFormClient.cpp
M Source/WebKit/UIProcess/WebFormClient.cpp
M Source/WebKit/UIProcess/WebFormClient.h
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/WebPageProxy.messages.in
M Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.h
M Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.h
M Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/DuplicateCompletionHandlerCalls.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm
Log Message:
-----------
Expose form requestURL in _WKInputDelegate willSubmitFormValues callback
https://bugs.webkit.org/show_bug.cgi?id=302341
rdar://164485992
Reviewed by Alex Christensen and BJ Burg.
Send form requestURL and method to UIProcess. Add a new method to
_WKInputDelegate that exposes those parameters.
Instead of passing around the FormState, we now pass the
FormSubmission, and it will be used in get the requestURL and method in
FrameLoader::continueLoadAfterNavigationPolicy
Tests: Tools/TestWebKitAPI/Tests/WebKitCocoa/DuplicateCompletionHandlerCalls.mm
Tools/TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm
Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm
Tests: Tools/TestWebKitAPI/Tests/WebKitCocoa/DuplicateCompletionHandlerCalls.mm
Tools/TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm
Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm
* Source/WebCore/html/HTMLFormElement.h:
* Source/WebCore/loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::willSendRequest):
* Source/WebCore/loader/DocumentLoader.h:
* Source/WebCore/loader/EmptyClients.cpp:
(WebCore::EmptyFrameLoaderClient::dispatchWillSubmitForm):
* Source/WebCore/loader/EmptyFrameLoaderClient.h:
* Source/WebCore/loader/FormSubmission.h:
(WebCore::FormSubmission::formState const):
(WebCore::FormSubmission::takeState): Deleted.
* Source/WebCore/loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadFrameRequest):
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::load):
(WebCore::FrameLoader::loadWithNavigationAction):
(WebCore::FrameLoader::loadWithDocumentLoader):
(WebCore::FrameLoader::loadPostRequest):
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
* Source/WebCore/loader/FrameLoader.h:
* Source/WebCore/loader/LocalFrameLoaderClient.h:
* Source/WebCore/loader/NavigationScheduler.cpp:
* Source/WebCore/loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::checkNavigationPolicy):
(WebCore::PolicyChecker::checkNewWindowPolicy):
* Source/WebCore/loader/PolicyChecker.h:
* Source/WebKit/UIProcess/API/APIFormClient.h:
(API::FormClient::willSubmitForm):
* Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setInputDelegate:]):
* Source/WebKit/UIProcess/API/Cocoa/_WKInputDelegate.h:
* Source/WebKit/UIProcess/API/glib/WebKitFormClient.cpp:
* Source/WebKit/UIProcess/WebFormClient.cpp:
(WebKit::WebFormClient::willSubmitForm):
* Source/WebKit/UIProcess/WebFormClient.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::willSubmitForm):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.messages.in:
* Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.cpp:
(WebKit::WebLocalFrameLoaderClient::dispatchWillSubmitForm):
* Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.h:
* Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.h:
* Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchWillSubmitForm):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/DuplicateCompletionHandlerCalls.mm:
(-[DuplicateCompletionHandlerCallsDelegate
_webView:willSubmitFormValues:frameInfo:sourceFrameInfo:userObject:requestURL:method:submissionHandler:]):
(-[DuplicateCompletionHandlerCallsDelegate
_webView:willSubmitFormValues:frameInfo:sourceFrameInfo:userObject:submissionHandler:]):
Deleted.
* Tools/TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
(-[InputDelegateForFormSubmission
_webView:willSubmitFormValues:frameInfo:sourceFrameInfo:userObject:requestURL:method:submissionHandler:]):
(-[InputDelegateForFormSubmission
_webView:willSubmitFormValues:frameInfo:sourceFrameInfo:userObject:submissionHandler:]):
Deleted.
* Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm:
(-[InputDelegate
_webView:willSubmitFormValues:frameInfo:sourceFrameInfo:userObject:requestURL:method:submissionHandler:]):
(-[InputDelegate
_webView:willSubmitFormValues:frameInfo:sourceFrameInfo:userObject:submissionHandler:]):
Deleted.
Canonical link: https://commits.webkit.org/303302@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications