Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 68f61154cacb9920c6c79f3d0e4de23d1f6d3270
https://github.com/WebKit/WebKit/commit/68f61154cacb9920c6c79f3d0e4de23d1f6d3270
Author: Jamie Murphy <[email protected]>
Date: 2025-10-06 (Mon, 06 Oct 2025)
Changed paths:
M Source/WebCore/platform/graphics/Icon.h
M Source/WebCore/platform/graphics/gtk/IconGtk.cpp
M Source/WebKit/PlatformGTK.cmake
M Source/WebKit/PlatformWPE.cmake
M Source/WebKit/Shared/API/APIData.h
A Source/WebKit/Shared/Extensions/gtk/WebExtensionUtilitiesGtk.cpp
A Source/WebKit/Shared/Extensions/wpe/WebExtensionUtilitiesWPE.cpp
M Source/WebKit/SourcesGTK.txt
M Source/WebKit/SourcesWPE.txt
M Source/WebKit/UIProcess/API/glib/WebKitError.cpp
M Source/WebKit/UIProcess/API/glib/WebKitError.h.in
M Source/WebKit/UIProcess/API/glib/WebKitPrivate.cpp
M Source/WebKit/UIProcess/API/glib/WebKitPrivate.h
A Source/WebKit/UIProcess/API/glib/WebKitWebExtension.cpp
A Source/WebKit/UIProcess/API/glib/WebKitWebExtension.h.in
A Source/WebKit/UIProcess/API/glib/WebKitWebExtensionInternal.h
M Source/WebKit/UIProcess/API/glib/WebKitWebExtensionMatchPatternPrivate.h
M Source/WebKit/UIProcess/API/glib/webkit.h.in
M Source/WebKit/UIProcess/Extensions/WebExtension.h
A Source/WebKit/UIProcess/Extensions/gtk/WebExtensionGtk.cpp
A Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebExtension.cpp
M Tools/TestWebKitAPI/glib/CMakeLists.txt
A Tools/TestWebKitAPI/glib/WebKitGLib/WebExtensionUtilities.cpp
A Tools/TestWebKitAPI/glib/WebKitGLib/WebExtensionUtilities.h
Log Message:
-----------
[GTK] Create WebKitWebExtension
https://webkit.org/b/285379
Reviewed by Adrian Perez de Castro and Patrick Griffis.
This creates a GLib API of WebExtension, along with some utility functions
needed for Linux-specific pathways. This new API is only built when
ENABLE_2022_GLIB_API is enabled,
preventing a conflict with the older WebKitWebExtension API that was renamed.
As well, this fixes WEBKIT_WEB_EXTENSION_MATCH_PATTERN_ERROR as it originally
pointed to webkit_web_extension_error_quark(). Both
WEBKIT_WEB_EXTENSION_MATCH_PATTERN_ERROR and WEBKIT_WEB_EXTENSION_ERROR now are
properly defined with their respective quarks.
Tests: Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebExtension.cpp
Tools/TestWebKitAPI/glib/CMakeLists.txt
Tools/TestWebKitAPI/glib/WebKitGLib/WebExtensionUtilities.cpp
Tools/TestWebKitAPI/glib/WebKitGLib/WebExtensionUtilities.h
* Source/WebCore/platform/graphics/Icon.h:
* Source/WebCore/platform/graphics/gtk/IconGtk.cpp:
(WebCore::Icon::Icon):
(WebCore::Icon::create):
* Source/WebKit/PlatformGTK.cmake:
* Source/WebKit/PlatformWPE.cmake:
* Source/WebKit/Shared/API/APIData.h:
(API::Data::createWithoutCopying):
* Source/WebKit/Shared/Extensions/gtk/WebExtensionUtilitiesGtk.cpp: Copied from
Source/WebKit/UIProcess/API/glib/WebKitPrivate.h.
(WebKit::availableScreenScales):
* Source/WebKit/Shared/Extensions/wpe/WebExtensionUtilitiesWPE.cpp: Copied from
Source/WebKit/UIProcess/API/glib/WebKitPrivate.h.
(WebKit::availableScreenScales):
* Source/WebKit/SourcesGTK.txt:
* Source/WebKit/SourcesWPE.txt:
* Source/WebKit/UIProcess/API/glib/WebKitError.cpp:
(webkit_web_extension_error_quark):
* Source/WebKit/UIProcess/API/glib/WebKitError.h.in:
* Source/WebKit/UIProcess/API/glib/WebKitPrivate.cpp:
(toWebKitWebExtensionError):
* Source/WebKit/UIProcess/API/glib/WebKitPrivate.h:
* Source/WebKit/UIProcess/API/glib/WebKitWebExtension.cpp: Added.
(webkitWebExtensionGetProperty):
(webkit_web_extension_class_init):
(webkitWebExtensionCreate):
(webkit_web_extension_new):
(webkit_web_extension_get_manifest_version):
(webkit_web_extension_supports_manifest_version):
(webkit_web_extension_get_default_locale):
(webkit_web_extension_get_display_name):
(webkit_web_extension_get_display_short_name):
(webkit_web_extension_get_display_version):
(webkit_web_extension_get_display_description):
(webkit_web_extension_get_display_action_label):
(webkit_web_extension_get_icon):
(webkit_web_extension_get_action_icon):
(webkit_web_extension_get_version):
(webkit_web_extension_get_requested_permissions):
(webkit_web_extension_get_optional_permissions):
(webkit_web_extension_get_requested_permission_match_patterns):
(webkit_web_extension_get_optional_permission_match_patterns):
(webkit_web_extension_get_all_requested_match_patterns):
(webkit_web_extension_get_has_background_content):
(webkit_web_extension_get_has_service_worker_background_content):
(webkit_web_extension_get_has_modular_background_content):
(webkit_web_extension_get_has_persistent_background_content):
(webkit_web_extension_get_has_injected_content):
(webkit_web_extension_get_has_options_page):
(webkit_web_extension_get_has_override_new_tab_page):
(webkit_web_extension_get_has_commands):
(webkit_web_extension_get_has_content_modification_rules):
* Source/WebKit/UIProcess/API/glib/WebKitWebExtension.h.in: Added.
* Source/WebKit/UIProcess/API/glib/WebKitWebExtensionInternal.h: Copied from
Source/WebKit/UIProcess/API/glib/WebKitWebExtensionMatchPatternPrivate.h.
* Source/WebKit/UIProcess/API/glib/WebKitWebExtensionMatchPatternPrivate.h:
* Source/WebKit/UIProcess/API/glib/webkit.h.in:
* Source/WebKit/UIProcess/Extensions/WebExtension.h:
(WebKit::WebExtension::WebExtension):
* Source/WebKit/UIProcess/Extensions/gtk/WebExtensionGtk.cpp: Added.
(WebKit::WebExtension::WebExtension):
(WebKit::WebExtension::resourceDataForPath):
(WebKit::WebExtension::recordError):
(WebKit::WebExtension::iconForPath):
(WebKit::WebExtension::bestIcon):
* Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebExtension.cpp: Added.
(createGBytes):
(testExtensionCreationFromDirectory):
(testDisplayStringParsing):
(testDefaultLocaleParsing):
(testDisplayStringParsingWithLocalization):
(testActionParsing):
(testContentScriptsParsing):
(testPermissionsParsing):
(testBackgroundParsing):
(testBackgroundPreferredEnvironmentParsing):
(testOptionsPageParsing):
(testURLOverridesParsing):
(testContentSecurityPolicyParsing):
(testWebAccessibleResourcesV2):
(testWebAccessibleResourcesV3):
(testCommandsParsing):
(testDeclarativeNetRequestParsing):
(testExternallyConnectableParsing):
(beforeAll):
(afterAll):
* Tools/TestWebKitAPI/glib/CMakeLists.txt:
* Tools/TestWebKitAPI/glib/WebKitGLib/WebExtensionUtilities.cpp: Copied from
Source/WebKit/UIProcess/API/glib/WebKitPrivate.h.
(TestWebKitAPI::Util::makePNGData):
* Tools/TestWebKitAPI/glib/WebKitGLib/WebExtensionUtilities.h: Copied from
Source/WebKit/UIProcess/API/glib/WebKitPrivate.h.
Canonical link: https://commits.webkit.org/301078@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