Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: df98bde355e5cd7178fb9d539bea5d9175fd2762
https://github.com/WebKit/WebKit/commit/df98bde355e5cd7178fb9d539bea5d9175fd2762
Author: Cole Carley <[email protected]>
Date: 2025-11-18 (Tue, 18 Nov 2025)
Changed paths:
M Source/WebKit/Sources.txt
M Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp
M Source/WebKit/UIProcess/Extensions/glib/WebExtensionGLib.cpp
A Source/WebKit/UIProcess/FindTextMatchesCallbackAggregator.cpp
A Source/WebKit/UIProcess/FindTextMatchesCallbackAggregator.h
M Source/WebKit/UIProcess/Media/RemoteMediaSessionProxy.cpp
M Source/WebKit/UIProcess/Media/RemoteMediaSessionProxy.h
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
M Tools/TestWebKitAPI/SourcesCocoa.txt
M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
M Tools/TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm
A Tools/TestWebKitAPI/Tests/WebKitCocoa/FindInPageUtilities.h
A Tools/TestWebKitAPI/Tests/WebKitCocoa/FindInPageUtilities.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/JSBuffer.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm
Log Message:
-----------
[Site Isolation] Find in page does not work on iOS
https://bugs.webkit.org/show_bug.cgi?id=302051
rdar://164130275
Reviewed by Aditya Keerthi and Sihui Liu.
Before this patch, the text matches would be requested only from
one web content process. Now, we use an aggregator, and collect
all the matches from every web content process. The aggregator
then calls the completion handler in it's destructor.
* Source/WebKit/Sources.txt:
* Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp:
(WebKit::WebKitProtocolHandler::handleGPU):
* Source/WebKit/UIProcess/Extensions/glib/WebExtensionGLib.cpp:
* Source/WebKit/UIProcess/FindTextMatchesCallbackAggregator.cpp: Copied from
Source/WebKit/UIProcess/Media/RemoteMediaSessionProxy.cpp.
(WebKit::FindTextMatchCallbackAggregator::create):
(WebKit::FindTextMatchCallbackAggregator::foundMatches):
(WebKit::FindTextMatchCallbackAggregator::~FindTextMatchCallbackAggregator):
(WebKit::FindTextMatchCallbackAggregator::FindTextMatchCallbackAggregator):
* Source/WebKit/UIProcess/FindTextMatchesCallbackAggregator.h: Copied from
Source/WebKit/UIProcess/Media/RemoteMediaSessionProxy.cpp.
* Source/WebKit/UIProcess/Media/RemoteMediaSessionProxy.cpp:
* Source/WebKit/UIProcess/Media/RemoteMediaSessionProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::findTextRangesForStringMatches):
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Tools/TestWebKitAPI/SourcesCocoa.txt:
* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
(-[TestSearchAggregator initWithCompletionHandler:]): Deleted.
(-[TestSearchAggregator foundRange:forSearchString:inDocument:]): Deleted.
(-[TestSearchAggregator finishedSearching]): Deleted.
(-[TestSearchAggregator allFoundRanges]): Deleted.
(-[TestSearchAggregator invalidateFoundRange:inDocument:]): Deleted.
(-[TestSearchAggregator invalidate]): Deleted.
(-[TestSearchAggregator count]): Deleted.
(testPerformTextSearchWithQueryStringInWebView): Deleted.
(textRangesForQueryString): Deleted.
* Tools/TestWebKitAPI/Tests/WebKitCocoa/FindInPageUtilities.h: Copied from
Source/WebKit/UIProcess/Media/RemoteMediaSessionProxy.cpp.
* Tools/TestWebKitAPI/Tests/WebKitCocoa/FindInPageUtilities.mm: Added.
(-[TestSearchAggregator initWithCompletionHandler:]):
(-[TestSearchAggregator foundRange:forSearchString:inDocument:]):
(-[TestSearchAggregator finishedSearching]):
(-[TestSearchAggregator allFoundRanges]):
(-[TestSearchAggregator invalidateFoundRange:inDocument:]):
(-[TestSearchAggregator invalidate]):
(-[TestSearchAggregator count]):
(testPerformTextSearchWithQueryStringInWebView):
(textRangesForQueryString):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/JSBuffer.mm:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm:
(TestWebKitAPI::(SiteIsolation, FindStringInFrameIOS)):
(TestWebKitAPI::(SiteIsolation, FindStringInNestedFrameIOS)):
(TestWebKitAPI::(SiteIsolation, FindStringAcrossMultipleFramesIOS)):
Canonical link: https://commits.webkit.org/303197@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications