[webkit-changes] [WebKit/WebKit] f1f3d5: [GLib] Make most public types final

Adrian Perez noreply at github.com
Tue Jan 24 03:13:58 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f1f3d529cb7ff4c9163f5bbb9146cc220e28631a
      https://github.com/WebKit/WebKit/commit/f1f3d529cb7ff4c9163f5bbb9146cc220e28631a
  Author: Adrian Perez de Castro <aperez at igalia.com>
  Date:   2023-01-24 (Tue, 24 Jan 2023)

  Changed paths:
    M Source/WTF/wtf/glib/WTFGType.h
    M Source/WebKit/Shared/API/glib/WebKitContextMenu.cpp
    M Source/WebKit/Shared/API/glib/WebKitContextMenuItem.cpp
    M Source/WebKit/Shared/API/glib/WebKitURIRequest.cpp
    M Source/WebKit/Shared/API/glib/WebKitURIResponse.cpp
    M Source/WebKit/Shared/API/glib/WebKitUserMessage.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitAuthenticationRequest.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitAutomationSession.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitBackForwardList.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitBackForwardListItem.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitCookieManager.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitDeviceInfoPermissionRequest.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitDownload.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitEditorState.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitFaviconDatabase.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitFileChooserRequest.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitFindController.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitFormSubmissionRequest.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitGeolocationManager.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitGeolocationPermissionRequest.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitMediaKeySystemPermissionRequest.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitNavigationPolicyDecision.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitNotification.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitNotificationPermissionRequest.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitOptionMenu.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitPointerLockPermissionRequest.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitResponsePolicyDecision.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitSecurityManager.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitUserContentFilterStore.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitUserContentManager.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitUserMediaPermissionRequest.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitWebResource.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataAccessPermissionRequest.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataManager.cpp
    M Source/WebKit/UIProcess/API/glib/WebKitWindowProperties.cpp
    M Source/WebKit/UIProcess/API/gtk/WebKitColorChooserRequest.cpp
    M Source/WebKit/UIProcess/API/gtk/WebKitPrintOperation.cpp
    M Source/WebKit/UIProcess/API/gtk/WebKitWebInspector.cpp
    M Source/cmake/OptionsGTK.cmake
    M Source/cmake/OptionsWPE.cmake

  Log Message:
  -----------
  [GLib] Make most public types final
https://bugs.webkit.org/show_bug.cgi?id=251008

Reviewed by Carlos Garcia Campos.

Add a new WEBKIT_DEFINE_TYPE_WITH_CODE macro, plus two helper macros
with an _IN_2022_API suffix to be used all around the code. These two
macros mark types as final only when ENABLE(2022_GLIB_API) is enabled,
otherwise they behave as the existing ones (leaving the types as
derivable). This will allow in the future to easily search for types
which change between final/non-final, and remove the use of _IN_2022_API
macros when the old API is no longer needed. Also, make sure to require
GLib 2.70 for the new API.

* Source/WTF/wtf/glib/WTFGType.h: Add new macros and switch between
  final/non-final depending on the value of ENABLE(2022_GLIB_API).
* Source/WebKit/Shared/API/glib/WebKitContextMenu.cpp:
* Source/WebKit/Shared/API/glib/WebKitContextMenuItem.cpp:
* Source/WebKit/Shared/API/glib/WebKitURIRequest.cpp:
* Source/WebKit/Shared/API/glib/WebKitURIResponse.cpp:
* Source/WebKit/Shared/API/glib/WebKitUserMessage.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitAuthenticationRequest.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitAutomationSession.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitBackForwardList.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitBackForwardListItem.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitCookieManager.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitDeviceInfoPermissionRequest.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitDownload.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitEditorState.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitFaviconDatabase.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitFileChooserRequest.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitFindController.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitFormSubmissionRequest.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitGeolocationManager.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitGeolocationPermissionRequest.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitMediaKeySystemPermissionRequest.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitNavigationPolicyDecision.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitNotification.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitNotificationPermissionRequest.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitOptionMenu.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitPointerLockPermissionRequest.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitResponsePolicyDecision.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitSecurityManager.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitUserContentFilterStore.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitUserContentManager.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitUserMediaPermissionRequest.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitWebResource.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataAccessPermissionRequest.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataManager.cpp:
* Source/WebKit/UIProcess/API/glib/WebKitWindowProperties.cpp:
* Source/WebKit/UIProcess/API/gtk/WebKitColorChooserRequest.cpp:
* Source/WebKit/UIProcess/API/gtk/WebKitPrintOperation.cpp:
* Source/WebKit/UIProcess/API/gtk/WebKitWebInspector.cpp:
* Source/cmake/OptionsGTK.cmake: Require GLib 2.70.0 when
  ENABLE(2022_GLIB_API) is set.
* Source/cmake/OptionsWPE.cmake: Ditto.

Canonical link: https://commits.webkit.org/259270@main




More information about the webkit-changes mailing list