Index: content/renderer/service_worker/service_worker_context_client.cc |
diff --git a/content/renderer/service_worker/service_worker_context_client.cc b/content/renderer/service_worker/service_worker_context_client.cc |
index 8b55a3c8728875bfe172af6501fdccdf83f8017d..8cda51130bf4cb56b2998b8808c40dfb2607c2f0 100644 |
--- a/content/renderer/service_worker/service_worker_context_client.cc |
+++ b/content/renderer/service_worker/service_worker_context_client.cc |
@@ -255,6 +255,8 @@ void ServiceWorkerContextClient::OnMessageReceived( |
IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEvent) |
IPC_MESSAGE_HANDLER(ServiceWorkerMsg_NotificationClickEvent, |
OnNotificationClickEvent) |
+ IPC_MESSAGE_HANDLER(ServiceWorkerMsg_NotificationCloseEvent, |
+ OnNotificationCloseEvent) |
IPC_MESSAGE_HANDLER(ServiceWorkerMsg_PushEvent, OnPushEvent) |
IPC_MESSAGE_HANDLER(ServiceWorkerMsg_GeofencingEvent, OnGeofencingEvent) |
IPC_MESSAGE_HANDLER(ServiceWorkerMsg_MessageToWorker, OnPostMessage) |
@@ -524,6 +526,13 @@ void ServiceWorkerContextClient::didHandleNotificationClickEvent( |
GetRoutingID(), request_id, result)); |
} |
+void ServiceWorkerContextClient::didHandleNotificationCloseEvent( |
+ int request_id, |
+ blink::WebServiceWorkerEventResult result) { |
+ Send(new ServiceWorkerHostMsg_NotificationCloseEventFinished( |
+ GetRoutingID(), request_id, result)); |
+} |
+ |
void ServiceWorkerContextClient::didHandlePushEvent( |
int request_id, |
blink::WebServiceWorkerEventResult result) { |
@@ -759,6 +768,17 @@ void ServiceWorkerContextClient::OnNotificationClickEvent( |
action_index); |
} |
+void ServiceWorkerContextClient::OnNotificationCloseEvent( |
+ int request_id, |
+ int64_t persistent_notification_id, |
+ const PlatformNotificationData& notification_data) { |
+ TRACE_EVENT0("ServiceWorker", |
+ "ServiceWorkerContextClient::OnNotificationCloseEvent"); |
+ proxy_->dispatchNotificationCloseEvent( |
+ request_id, persistent_notification_id, |
+ ToWebNotificationData(notification_data)); |
+} |
+ |
void ServiceWorkerContextClient::OnPushEvent(int request_id, |
const std::string& data) { |
TRACE_EVENT0("ServiceWorker", |