[webkit-changes] [WebKit/WebKit] 9f0d6c: Add SPI for connecting to webpushd

Sihui noreply at github.com
Thu Sep 5 10:15:17 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9f0d6c1f3935637aa86546cc0643676f0b34af41
      https://github.com/WebKit/WebKit/commit/9f0d6c1f3935637aa86546cc0643676f0b34af41
  Author: Sihui Liu <sihui_liu at apple.com>
  Date:   2024-09-05 (Thu, 05 Sep 2024)

  Changed paths:
    M Source/WebKit/Shared/API/APIObject.h
    M Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h
    M Source/WebKit/Shared/Cocoa/APIObject.mm
    M Source/WebKit/Sources.txt
    M Source/WebKit/SourcesCocoa.txt
    A Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.cpp
    A Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.h
    A Source/WebKit/UIProcess/API/APIWebPushMessage.h
    A Source/WebKit/UIProcess/API/APIWebPushSubscriptionData.h
    A Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.h
    A Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.mm
    A Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnectionInternal.h
    A Source/WebKit/UIProcess/API/Cocoa/_WKWebPushMessage.h
    A Source/WebKit/UIProcess/API/Cocoa/_WKWebPushMessage.mm
    A Source/WebKit/UIProcess/API/Cocoa/_WKWebPushMessageInternal.h
    A Source/WebKit/UIProcess/API/Cocoa/_WKWebPushSubscriptionData.h
    A Source/WebKit/UIProcess/API/Cocoa/_WKWebPushSubscriptionData.mm
    A Source/WebKit/UIProcess/API/Cocoa/_WKWebPushSubscriptionDataInternal.h
    M Source/WebKit/UIProcess/API/ios/WKWebViewTestingIOS.mm
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm

  Log Message:
  -----------
  Add SPI for connecting to webpushd
https://bugs.webkit.org/show_bug.cgi?id=279142
rdar://135297138

Reviewed by Ben Nham.

This will make it easier to test webpushd functionalities.

Tests: WebPushD.WKWebPushDaemonConnectionRequestPushPermission
       WebPushD.WKWebPushDaemonConnectionPushSubscription

* Source/WebKit/Shared/API/APIObject.h:
* Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h:
* Source/WebKit/Shared/Cocoa/APIObject.mm:
(API::Object::newObject):
* Source/WebKit/Sources.txt:
* Source/WebKit/SourcesCocoa.txt:
* Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.cpp: Added.
(API::WebPushDaemonConnection::WebPushDaemonConnection):
(API::WebPushDaemonConnection::getPushPermissionState):
(API::WebPushDaemonConnection::requestPushPermission):
(API::WebPushDaemonConnection::setAppBadge):
(API::WebPushDaemonConnection::subscribeToPushService):
(API::WebPushDaemonConnection::unsubscribeFromPushService):
(API::WebPushDaemonConnection::getPushSubscription):
(API::WebPushDaemonConnection::getNextPendingPushMessage):
* Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.h: Added.
* Source/WebKit/UIProcess/API/APIWebPushMessage.h: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
* Source/WebKit/UIProcess/API/APIWebPushSubscriptionData.h: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.h: Added.
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.mm: Added.
(-[_WKWebPushDaemonConnectionConfiguration init]):
(-[_WKWebPushDaemonConnection initWithConfiguration:]):
(toWKPermissionsState):
(-[_WKWebPushDaemonConnection getPushPermissionStateForOrigin:completionHandler:]):
(-[_WKWebPushDaemonConnection requestPushPermissionForOrigin:completionHandler:]):
(-[_WKWebPushDaemonConnection setAppBadge:origin:]):
(-[_WKWebPushDaemonConnection subscribeToPushServiceForScope:applicationServerKey:completionHandler:]):
(-[_WKWebPushDaemonConnection unsubscribeFromPushServiceForScope:completionHandler:]):
(-[_WKWebPushDaemonConnection getSubscriptionForScope:completionHandler:]):
(-[_WKWebPushDaemonConnection getNextPendingPushMessage:]):
(-[_WKWebPushDaemonConnection _apiObject]):
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnectionInternal.h: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushMessage.h: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushMessage.mm: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
(-[_WKWebPushMessage dealloc]):
(-[_WKWebPushMessage data]):
(-[_WKWebPushMessage scope]):
(-[_WKWebPushMessage partition]):
(-[_WKWebPushMessage _apiObject]):
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushMessageInternal.h: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushSubscriptionData.h: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushSubscriptionData.mm: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
(-[_WKWebPushSubscriptionData dealloc]):
(-[_WKWebPushSubscriptionData endpoint]):
(-[_WKWebPushSubscriptionData applicationServerKey]):
(-[_WKWebPushSubscriptionData authenticationSecret]):
(-[_WKWebPushSubscriptionData ecdhPublicKey]):
(-[_WKWebPushSubscriptionData _apiObject]):
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushSubscriptionDataInternal.h: Copied from Source/WebKit/Shared/API/Cocoa/WebKitPrivate.h.
* Source/WebKit/UIProcess/API/ios/WKWebViewTestingIOS.mm:
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
(TestWebKitAPI::(WebPushD, WKWebPushDaemonConnectionRequestPushPermission)):
(TestWebKitAPI::(WebPushD, WKWebPushDaemonConnectionPushSubscription)):

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list