Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 442841bf92b4e7def4d5edbf6006afe26c5dd9ff
https://github.com/WebKit/WebKit/commit/442841bf92b4e7def4d5edbf6006afe26c5dd9ff
Author: Timothy Hatcher <[email protected]>
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
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes