Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(583)

Side by Side Diff: content/renderer/service_worker/service_worker_context_client.cc

Issue 1619703002: Implement notificationclose event (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed test expectations and compile error Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/service_worker/service_worker_context_client.h" 5 #include "content/renderer/service_worker/service_worker_context_client.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/lazy_instance.h" 9 #include "base/lazy_instance.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after
249 int embedded_worker_id, 249 int embedded_worker_id,
250 const IPC::Message& message) { 250 const IPC::Message& message) {
251 CHECK_EQ(embedded_worker_id_, embedded_worker_id); 251 CHECK_EQ(embedded_worker_id_, embedded_worker_id);
252 bool handled = true; 252 bool handled = true;
253 IPC_BEGIN_MESSAGE_MAP(ServiceWorkerContextClient, message) 253 IPC_BEGIN_MESSAGE_MAP(ServiceWorkerContextClient, message)
254 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ActivateEvent, OnActivateEvent) 254 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ActivateEvent, OnActivateEvent)
255 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_FetchEvent, OnFetchEvent) 255 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_FetchEvent, OnFetchEvent)
256 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEvent) 256 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEvent)
257 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_NotificationClickEvent, 257 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_NotificationClickEvent,
258 OnNotificationClickEvent) 258 OnNotificationClickEvent)
259 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_NotificationCloseEvent,
260 OnNotificationCloseEvent)
259 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_PushEvent, OnPushEvent) 261 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_PushEvent, OnPushEvent)
260 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_GeofencingEvent, OnGeofencingEvent) 262 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_GeofencingEvent, OnGeofencingEvent)
261 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_MessageToWorker, OnPostMessage) 263 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_MessageToWorker, OnPostMessage)
262 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_CrossOriginMessageToWorker, 264 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_CrossOriginMessageToWorker,
263 OnCrossOriginMessageToWorker) 265 OnCrossOriginMessageToWorker)
264 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_DidGetClients, OnDidGetClients) 266 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_DidGetClients, OnDidGetClients)
265 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_OpenWindowResponse, 267 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_OpenWindowResponse,
266 OnOpenWindowResponse) 268 OnOpenWindowResponse)
267 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_OpenWindowError, 269 IPC_MESSAGE_HANDLER(ServiceWorkerMsg_OpenWindowError,
268 OnOpenWindowError) 270 OnOpenWindowError)
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after
518 response)); 520 response));
519 } 521 }
520 522
521 void ServiceWorkerContextClient::didHandleNotificationClickEvent( 523 void ServiceWorkerContextClient::didHandleNotificationClickEvent(
522 int request_id, 524 int request_id,
523 blink::WebServiceWorkerEventResult result) { 525 blink::WebServiceWorkerEventResult result) {
524 Send(new ServiceWorkerHostMsg_NotificationClickEventFinished( 526 Send(new ServiceWorkerHostMsg_NotificationClickEventFinished(
525 GetRoutingID(), request_id, result)); 527 GetRoutingID(), request_id, result));
526 } 528 }
527 529
530 void ServiceWorkerContextClient::didHandleNotificationCloseEvent(
531 int request_id,
532 blink::WebServiceWorkerEventResult result) {
533 Send(new ServiceWorkerHostMsg_NotificationCloseEventFinished(
534 GetRoutingID(), request_id, result));
535 }
536
528 void ServiceWorkerContextClient::didHandlePushEvent( 537 void ServiceWorkerContextClient::didHandlePushEvent(
529 int request_id, 538 int request_id,
530 blink::WebServiceWorkerEventResult result) { 539 blink::WebServiceWorkerEventResult result) {
531 Send(new ServiceWorkerHostMsg_PushEventFinished( 540 Send(new ServiceWorkerHostMsg_PushEventFinished(
532 GetRoutingID(), request_id, result)); 541 GetRoutingID(), request_id, result));
533 } 542 }
534 543
535 void ServiceWorkerContextClient::didHandleSyncEvent( 544 void ServiceWorkerContextClient::didHandleSyncEvent(
536 int request_id, 545 int request_id,
537 blink::WebServiceWorkerEventResult result) { 546 blink::WebServiceWorkerEventResult result) {
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
753 int action_index) { 762 int action_index) {
754 TRACE_EVENT0("ServiceWorker", 763 TRACE_EVENT0("ServiceWorker",
755 "ServiceWorkerContextClient::OnNotificationClickEvent"); 764 "ServiceWorkerContextClient::OnNotificationClickEvent");
756 proxy_->dispatchNotificationClickEvent( 765 proxy_->dispatchNotificationClickEvent(
757 request_id, 766 request_id,
758 persistent_notification_id, 767 persistent_notification_id,
759 ToWebNotificationData(notification_data), 768 ToWebNotificationData(notification_data),
760 action_index); 769 action_index);
761 } 770 }
762 771
772 void ServiceWorkerContextClient::OnNotificationCloseEvent(
773 int request_id,
774 int64_t persistent_notification_id,
775 const PlatformNotificationData& notification_data) {
776 TRACE_EVENT0("ServiceWorker",
777 "ServiceWorkerContextClient::OnNotificationCloseEvent");
778 proxy_->dispatchNotificationCloseEvent(
779 request_id, persistent_notification_id,
780 ToWebNotificationData(notification_data));
781 }
782
763 void ServiceWorkerContextClient::OnPushEvent(int request_id, 783 void ServiceWorkerContextClient::OnPushEvent(int request_id,
764 const PushEventPayload& payload) { 784 const PushEventPayload& payload) {
765 TRACE_EVENT0("ServiceWorker", 785 TRACE_EVENT0("ServiceWorker",
766 "ServiceWorkerContextClient::OnPushEvent"); 786 "ServiceWorkerContextClient::OnPushEvent");
767 // Only set data to be a valid string if the payload had decrypted data. 787 // Only set data to be a valid string if the payload had decrypted data.
768 blink::WebString data; 788 blink::WebString data;
769 if (!payload.is_null) 789 if (!payload.is_null)
770 data.assign(blink::WebString::fromUTF8(payload.data)); 790 data.assign(blink::WebString::fromUTF8(payload.data));
771 proxy_->dispatchPushEvent(request_id, data); 791 proxy_->dispatchPushEvent(request_id, data);
772 } 792 }
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
991 } 1011 }
992 1012
993 base::WeakPtr<ServiceWorkerContextClient> 1013 base::WeakPtr<ServiceWorkerContextClient>
994 ServiceWorkerContextClient::GetWeakPtr() { 1014 ServiceWorkerContextClient::GetWeakPtr() {
995 DCHECK(worker_task_runner_->RunsTasksOnCurrentThread()); 1015 DCHECK(worker_task_runner_->RunsTasksOnCurrentThread());
996 DCHECK(context_); 1016 DCHECK(context_);
997 return context_->weak_factory.GetWeakPtr(); 1017 return context_->weak_factory.GetWeakPtr();
998 } 1018 }
999 1019
1000 } // namespace content 1020 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698