Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: abeb87a4cf1f20d157039531443658d011c7892f
https://github.com/WebKit/WebKit/commit/abeb87a4cf1f20d157039531443658d011c7892f
Author: Zak Ridouh <[email protected]>
Date: 2026-09-29 (Tue, 29 Sep 2026)
Changed paths:
M Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm
M Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm
M Tools/TestWebKitAPI/Tests/WebKit/WKWebView/SiteIsolation-1.mm
Log Message:
-----------
[Site Isolation] Dictation alternatives and placeholders don't work in
cross-site iframes
<https://bugs.webkit.org/show_bug.cgi?id=325466>
<rdar://problem/188562054>
Reviewed by Tim Nguyen.
Dictation alternatives, streaming opacity, the final dictation result, and text
placeholders were always sent to the
main frame's process, so they did nothing for inputs in cross-site iframes.
Send them to the focused frame's process, and remove a text placeholder in the
process that owns it. The web process now
always replies to the dictation alternative requests.
Test: Tools/TestWebKitAPI/Tests/WebKit/WKWebView/SiteIsolation-1.mm
* Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::addDictationAlternative):
(WebKit::WebPageProxy::dictationAlternativesAtSelection):
(WebKit::WebPageProxy::clearDictationAlternatives):
(WebKit::WebPageProxy::setDictationStreamingOpacity):
(WebKit::WebPageProxy::clearDictationStreamingOpacity):
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::insertTextPlaceholder):
(WebKit::WebPageProxy::removeTextPlaceholder):
* Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::willInsertFinalDictationResult):
(WebKit::WebPageProxy::didInsertFinalDictationResult):
* Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::WebPage::addDictationAlternative):
(WebKit::WebPage::dictationAlternativesAtSelection):
(WebKit::WebPage::removeTextPlaceholder):
* Tools/TestWebKitAPI/Tests/WebKit/WKWebView/SiteIsolation-1.mm:
(TestWebKitAPI::TEST(SiteIsolation, TextPlaceholderInCrossOriginIframe)):
(TestWebKitAPI::configurationWithInternals):
(TestWebKitAPI::markerCountInFrame):
(TestWebKitAPI::TEST(SiteIsolation, DictationAlternativesInCrossOriginIframe)):
(TestWebKitAPI::TEST(SiteIsolation,
DictationStreamingOpacityInCrossOriginIframe)):
(TestWebKitAPI::TEST(SiteIsolation,
InsertFinalDictationResultInCrossOriginIframe)):
Canonical link: https://commits.webkit.org/322201@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications