Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 442841bf92b4e7def4d5edbf6006afe26c5dd9ff https://github.com/WebKit/WebKit/commit/442841bf92b4e7def4d5edbf6006afe26c5dd9ff Author: Timothy Hatcher <timo...@apple.com> Date: 2024-07-25 (Thu, 25 Jul 2024)
Changed paths: M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionCommand.h M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionContext.mm M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionTab.h M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionWindow.h M Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPITabsCocoa.mm M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionTabCocoa.mm M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionWindowCocoa.mm M Source/WebKit/UIProcess/Extensions/WebExtensionContext.h M Source/WebKit/UIProcess/Extensions/WebExtensionTab.h M Source/WebKit/UIProcess/Extensions/WebExtensionWindow.h M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPITabs.mm M Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.h M Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.mm Log Message: ----------- Update Web Extension tabs API based on feedback. https://webkit.org/b/277019 rdar://problem/132419218 Reviewed by Brian Weinstein. Revise several `_WKWebExtensionTab` protocol methods to have a single setter instead of two. This simplifies the client’s code and reduces the likelihood of forgetting to implement both true and false states for features like pin, mute, reader mode, and select. To ensure future-proofing, I changed the `captureVisibleWebpage` method to `takeSnapshot` and pass along the `WKSnapshotConfiguration`. This allows Web Extensions to have different options in the future without requiring additional changes. Additionally, I reduced the reload methods to one with a parameter for fromOrigin, and I removed the “detect” keyword from `detectWebpageLocale`. Finally, `_WKWebExtensionTabChangedPropertiesAll` has been removed since it is not future proof and dangerous if more properties are added later. * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionContext.mm: (toImpl): * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionTab.h: * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtensionWindow.h: * Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPITabsCocoa.mm: (WebKit::WebExtensionContext::tabsReload): * Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionTabCocoa.mm: (WebKit::WebExtensionTab::WebExtensionTab): (WebKit::WebExtensionTab::parameters const): (WebKit::WebExtensionTab::changedParameters const): (WebKit::WebExtensionTab::title const): (WebKit::WebExtensionTab::setPinned): (WebKit::WebExtensionTab::setReaderModeShowing): (WebKit::WebExtensionTab::isReaderModeShowing const): (WebKit::WebExtensionTab::setMuted): (WebKit::WebExtensionTab::detectWebpageLocale): (WebKit::WebExtensionTab::captureVisibleWebpage): (WebKit::WebExtensionTab::reload): (WebKit::WebExtensionTab::setSelected): (WebKit::WebExtensionTab::pin): Deleted. (WebKit::WebExtensionTab::unpin): Deleted. (WebKit::WebExtensionTab::toggleReaderMode): Deleted. (WebKit::WebExtensionTab::isShowingReaderMode const): Deleted. (WebKit::WebExtensionTab::mute): Deleted. (WebKit::WebExtensionTab::unmute): Deleted. (WebKit::WebExtensionTab::reloadFromOrigin): Deleted. (WebKit::WebExtensionTab::select): Deleted. (WebKit::WebExtensionTab::deselect): Deleted. * Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionWindowCocoa.mm: (WebKit::WebExtensionWindow::WebExtensionWindow): * Source/WebKit/UIProcess/Extensions/WebExtensionContext.h: * Source/WebKit/UIProcess/Extensions/WebExtensionTab.h: (WebKit::WebExtensionTab::pin): (WebKit::WebExtensionTab::unpin): (WebKit::WebExtensionTab::toggleReaderMode): (WebKit::WebExtensionTab::mute): (WebKit::WebExtensionTab::unmute): (WebKit::WebExtensionTab::select): (WebKit::WebExtensionTab::deselect): * Source/WebKit/UIProcess/Extensions/WebExtensionWindow.h: * Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPITabs.mm: (TestWebKitAPI::TEST(WKWebExtensionAPITabs, ToggleReaderMode)): (TestWebKitAPI::TEST(WKWebExtensionAPITabs, DetectLanguage)): (TestWebKitAPI::TEST(WKWebExtensionAPITabs, Reload)): * Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.h: * Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.mm: (-[TestWebExtensionTab isReaderModeShowingForWebExtensionContext:]): (-[TestWebExtensionTab setReaderModeShowing:forWebExtensionContext:completionHandler:]): (-[TestWebExtensionTab webpageLocaleForWebExtensionContext:completionHandler:]): (-[TestWebExtensionTab reloadForWebExtensionContext:fromOrigin:completionHandler:]): (-[TestWebExtensionTab setPinned:forWebExtensionContext:completionHandler:]): (-[TestWebExtensionTab setMuted:forWebExtensionContext:completionHandler:]): (-[TestWebExtensionTab setSelected:forWebExtensionContext:completionHandler:]): (-[TestWebExtensionTab isShowingReaderModeForWebExtensionContext:]): Deleted. (-[TestWebExtensionTab toggleReaderModeForWebExtensionContext:completionHandler:]): Deleted. (-[TestWebExtensionTab detectWebpageLocaleForWebExtensionContext:completionHandler:]): Deleted. (-[TestWebExtensionTab reloadForWebExtensionContext:completionHandler:]): Deleted. (-[TestWebExtensionTab reloadFromOriginForWebExtensionContext:completionHandler:]): Deleted. (-[TestWebExtensionTab pinForWebExtensionContext:completionHandler:]): Deleted. (-[TestWebExtensionTab unpinForWebExtensionContext:completionHandler:]): Deleted. (-[TestWebExtensionTab muteForWebExtensionContext:completionHandler:]): Deleted. (-[TestWebExtensionTab unmuteForWebExtensionContext:completionHandler:]): Deleted. (-[TestWebExtensionTab selectForWebExtensionContext:completionHandler:]): Deleted. (-[TestWebExtensionTab deselectForWebExtensionContext:completionHandler:]): Deleted. Canonical link: https://commits.webkit.org/281355@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