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 f62c589934a1478446ced8a85efacde92b62ef50..60f3f77115310cedea33e00abbdb4b1abaf11f08 100644 |
--- a/content/renderer/service_worker/service_worker_context_client.cc |
+++ b/content/renderer/service_worker/service_worker_context_client.cc |
@@ -193,8 +193,6 @@ |
IDMap<std::unique_ptr<blink::WebServiceWorkerClientCallbacks>>; |
using SkipWaitingCallbacksMap = |
IDMap<std::unique_ptr<blink::WebServiceWorkerSkipWaitingCallbacks>>; |
- using ActivateEventCallbacksMap = |
- IDMap<std::unique_ptr<const DispatchActivateEventCallback>>; |
using SyncEventCallbacksMap = IDMap<std::unique_ptr<const SyncCallback>>; |
using PaymentRequestEventCallbacksMap = |
IDMap<std::unique_ptr<const PaymentRequestEventCallback>>; |
@@ -232,9 +230,6 @@ |
// Pending callbacks for ClaimClients(). |
ClaimClientsCallbacksMap claim_clients_callbacks; |
- |
- // Pending callbacks for Activate Events. |
- ActivateEventCallbacksMap activate_event_callbacks; |
// Pending callbacks for Background Sync Events. |
SyncEventCallbacksMap sync_event_callbacks; |
@@ -412,6 +407,7 @@ |
CHECK_EQ(embedded_worker_id_, embedded_worker_id); |
bool handled = true; |
IPC_BEGIN_MESSAGE_MAP(ServiceWorkerContextClient, message) |
+ IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ActivateEvent, OnActivateEvent) |
IPC_MESSAGE_HANDLER(ServiceWorkerMsg_InstallEvent, OnInstallEvent) |
IPC_MESSAGE_HANDLER(ServiceWorkerMsg_DidGetClient, OnDidGetClient) |
IPC_MESSAGE_HANDLER(ServiceWorkerMsg_DidGetClients, OnDidGetClients) |
@@ -575,7 +571,6 @@ |
proxy_ = NULL; |
// Aborts all the pending events callbacks. |
- AbortPendingEventCallbacks(context_->activate_event_callbacks); |
AbortPendingEventCallbacks(context_->sync_event_callbacks); |
AbortPendingEventCallbacks(context_->notification_click_event_callbacks); |
AbortPendingEventCallbacks(context_->notification_close_event_callbacks); |
@@ -669,12 +664,9 @@ |
int request_id, |
blink::WebServiceWorkerEventResult result, |
double event_dispatch_time) { |
- const DispatchActivateEventCallback* callback = |
- context_->activate_event_callbacks.Lookup(request_id); |
- DCHECK(callback); |
- callback->Run(EventResultToStatus(result), |
- base::Time::FromDoubleT(event_dispatch_time)); |
- context_->activate_event_callbacks.Remove(request_id); |
+ Send(new ServiceWorkerHostMsg_ActivateEventFinished( |
+ GetRoutingID(), request_id, result, |
+ base::Time::FromDoubleT(event_dispatch_time))); |
} |
void ServiceWorkerContextClient::didHandleExtendableMessageEvent( |
@@ -941,12 +933,9 @@ |
WebServiceWorkerRegistrationImpl::CreateHandle(registration)); |
} |
-void ServiceWorkerContextClient::DispatchActivateEvent( |
- const DispatchActivateEventCallback& callback) { |
- TRACE_EVENT0("ServiceWorker", |
- "ServiceWorkerContextClient::DispatchActivateEvent"); |
- int request_id = context_->activate_event_callbacks.Add( |
- base::MakeUnique<DispatchActivateEventCallback>(callback)); |
+void ServiceWorkerContextClient::OnActivateEvent(int request_id) { |
+ TRACE_EVENT0("ServiceWorker", |
+ "ServiceWorkerContextClient::OnActivateEvent"); |
proxy_->dispatchActivateEvent(request_id); |
} |