Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: bd5ff3526d34a0c652e3cc8cf67ed71355aa84da
      
https://github.com/WebKit/WebKit/commit/bd5ff3526d34a0c652e3cc8cf67ed71355aa84da
  Author: Brady Eidson <[email protected]>
  Date:   2023-05-17 (Wed, 17 May 2023)

  Changed paths:
    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/_WKWebsiteDataStoreDelegate.h
    M Source/WebKit/UIProcess/WebProcessProxy.cpp
    M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp
    M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h
    M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreClient.h
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm

  Log Message:
  -----------
  Implement ServiceWorkerRegistration.getNotifications()
https://bugs.webkit.org/show_bug.cgi?id=236544
rdar://105689245

Reviewed by Tim Horton.

Since embedding clients are currently in charge of actually posting 
notifications,
they must also be in charge of getting notifications.

As far as WebKit goes, this patch adds a delegate SPI to request notifications 
from the client.

* Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
* Source/WebKit/UIProcess/API/Cocoa/_WKNotificationData.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKNotificationData.mm:
(-[_WKNotificationData initWithCoreData:dataStore:]):
(-[_WKNotificationData dictionaryRepresentation]):

* Source/WebKit/UIProcess/API/Cocoa/_WKWebsiteDataStoreDelegate.h:

* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::getNotifications):

* Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::hasClientGetDisplayedNotifications const):
(WebKit::WebsiteDataStore::getNotifications):
* Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h:

* Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreClient.h:
(WebKit::WebsiteDataStoreClient::hasGetDisplayedNotifications const):
(WebKit::WebsiteDataStoreClient::getDisplayedNotifications):

* Tools/TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm:
(-[FirePushEventDataStoreDelegate init]):
(-[FirePushEventDataStoreDelegate websiteDataStore:showNotification:]):
(-[FirePushEventDataStoreDelegate 
websiteDataStore:getDisplayedNotificationsForWorkerOrigin:completionHandler:]):
(-[FirePushEventDataStoreDelegate dealloc]):

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to