[webkit-changes] [WebKit/WebKit] 8f9f5a: Expand webpushd connection SPI to enable regressio...

Brady Eidson noreply at github.com
Wed Sep 11 10:46:35 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8f9f5a32d4cee9eceba7c5fe2bb6ffda454b329d
      https://github.com/WebKit/WebKit/commit/8f9f5a32d4cee9eceba7c5fe2bb6ffda454b329d
  Author: Brady Eidson <beidson at apple.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M Source/WebCore/Modules/notifications/Notification.cpp
    M Source/WebCore/Modules/notifications/NotificationData.h
    M Source/WebCore/Modules/notifications/NotificationDataCocoa.mm
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
    M Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.cpp
    M Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.h
    M Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm
    M Source/WebKit/UIProcess/API/Cocoa/_WKNotificationData.h
    M Source/WebKit/UIProcess/API/Cocoa/_WKNotificationData.mm
    M Source/WebKit/UIProcess/API/Cocoa/_WKNotificationDataInternal.h
    M Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.h
    M Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.mm
    M Source/WebKit/WebProcess/Notifications/WebNotificationManager.cpp
    M Source/WebKit/webpushd/WebPushDaemon.mm
    M Tools/MiniBrowser/mac/AppDelegate.m
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm

  Log Message:
  -----------
  Expand webpushd connection SPI to enable regression testing of notifications
rdar://135722662
https://bugs.webkit.org/show_bug.cgi?id=279447

Reviewed by Sihui Liu.

Also includes a drive-by fix of tag processing in webpushd, which was easy to test
because of this change!

* Source/WebCore/Modules/notifications/NotificationData.h:

* Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.cpp:
(API::WebPushDaemonConnection::showNotification):
(API::WebPushDaemonConnection::getNotifications):
(API::WebPushDaemonConnection::cancelNotification):
* Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.h:

* Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm:

* Source/WebKit/UIProcess/API/Cocoa/_WKNotificationData.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKNotificationData.mm:
(-[_WKNotificationData _init]):
(-[_WKNotificationData _initWithCoreData:]):
(-[_WKNotificationData _getCoreData]):
(-[_WKNotificationData setTitle:]):
(-[_WKNotificationData title]):
(-[_WKNotificationData setDir:]):
(-[_WKNotificationData dir]):
(-[_WKNotificationData setLang:]):
(-[_WKNotificationData lang]):
(-[_WKNotificationData setBody:]):
(-[_WKNotificationData body]):
(-[_WKNotificationData setTag:]):
(-[_WKNotificationData tag]):
(-[_WKNotificationData setAlert:]):
(-[_WKNotificationData alert]):
(-[_WKNotificationData setData:]):
(-[_WKNotificationData data]):
(-[_WKNotificationData origin]):
(-[_WKNotificationData setSecurityOrigin:]):
(-[_WKNotificationData securityOrigin]):
(-[_WKNotificationData setServiceWorkerRegistrationURL:]):
(-[_WKNotificationData serviceWorkerRegistrationURL]):
(-[_WKNotificationData identifier]):
(-[_WKNotificationData setUuid:]):
(-[_WKNotificationData uuid]):
(-[_WKNotificationData userInfo]):
(-[_WKNotificationData dealloc]):
(-[_WKMutableNotificationData init]):
(-[_WKNotificationData initWithCoreData:dataStore:]): Deleted.
(-[_WKNotificationData dictionaryRepresentation]): Deleted.
* Source/WebKit/UIProcess/API/Cocoa/_WKNotificationDataInternal.h:

* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.mm:
(-[_WKWebPushDaemonConnection showNotification:completionHandler:]):
(-[_WKWebPushDaemonConnection getNotifications:tag:completionHandler:]):
(-[_WKWebPushDaemonConnection cancelNotification:uuid:]):

* Source/WebKit/webpushd/WebPushDaemon.mm:
(WebPushD::WebPushDaemon::getNotifications):

* Tools/MiniBrowser/mac/AppDelegate.m:
(-[BrowserAppDelegate createBrowserWindowController:]): Unfortunately, because Obj-C is
  what it is, and `tag` is a common selector, do gnarly Obj-C tricks here.

* Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
(TestWebKitAPI::(WebPushD, WKWebPushDaemonConnectionPushNotifications)):
(TestWebKitAPI::(WebPushD, WKWebPushDaemonConnectionPushSubscription)): Deleted.

Canonical link: https://commits.webkit.org/283493@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