Chromium Code Reviews| 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 1a358ce0e371450bf58e702b643d61f7f1c2e31a..4143be63d830537deffd73c15a27ef91222e0695 100644 |
| --- a/content/renderer/service_worker/service_worker_context_client.cc |
| +++ b/content/renderer/service_worker/service_worker_context_client.cc |
| @@ -266,8 +266,7 @@ class ServiceWorkerContextClient::NavigationPreloadRequest final |
| url_loader_(std::move(preload_handle->url_loader)), |
| binding_(this, std::move(preload_handle->url_loader_client_request)) {} |
| - ~NavigationPreloadRequest() override { |
| - } |
| + ~NavigationPreloadRequest() override {} |
| void OnReceiveResponse( |
| const ResourceResponseHead& response_head, |
| @@ -286,7 +285,7 @@ class ServiceWorkerContextClient::NavigationPreloadRequest final |
| const ResourceResponseHead& response_head) override { |
| // This will delete itself. |
| ReportErrorToClient( |
| - "Service Worker navigation preload doesn't suport redirect."); |
| + "Service Worker navigation preload doesn't support redirects."); |
| } |
| void OnDataDownloaded(int64_t data_length, |
| @@ -295,7 +294,7 @@ class ServiceWorkerContextClient::NavigationPreloadRequest final |
| } |
| void OnTransferSizeUpdated(int32_t transfer_size_diff) override { |
| - NOTREACHED(); |
| + // TODO(horo): Send this transfer size update notification to DevTools. |
| } |
| void OnStartLoadingResponseBody( |
| @@ -962,11 +961,16 @@ void ServiceWorkerContextClient::DispatchFetchEvent( |
| const ServiceWorkerFetchRequest& request, |
| mojom::FetchEventPreloadHandlePtr preload_handle, |
| const DispatchFetchEventCallback& callback) { |
| - std::unique_ptr<NavigationPreloadRequest> preload_request = |
| - preload_handle |
| - ? base::MakeUnique<NavigationPreloadRequest>( |
| - fetch_event_id, request.url, std::move(preload_handle)) |
| - : nullptr; |
| + std::unique_ptr<NavigationPreloadRequest> preload_request; |
| + if (preload_handle) { |
| + proxy_->onNavigationPreloadSent( |
| + fetch_event_id, request.url, |
| + preload_handle->sent_timestamp.ToInternalValue() / |
| + static_cast<double>(base::Time::kMicrosecondsPerSecond), |
| + preload_handle->sent_wall_time.ToDoubleT()); |
|
falken
2017/01/18 14:50:07
nit: I'd pass these as standard base/Time.h object
horo
2017/01/19 09:57:09
Done.
I added public/web/modules/serviceworker/DE
|
| + preload_request = base::MakeUnique<NavigationPreloadRequest>( |
| + fetch_event_id, request.url, std::move(preload_handle)); |
| + } |
| const bool navigation_preload_sent = !!preload_request; |
| blink::WebServiceWorkerRequest webRequest; |
| TRACE_EVENT0("ServiceWorker", |
| @@ -1256,6 +1260,7 @@ void ServiceWorkerContextClient::OnNavigationPreloadError( |
| void ServiceWorkerContextClient::OnNavigationPreloadComplete( |
| int fetch_event_id) { |
| + proxy_->onNavigationPreloadCompleted(fetch_event_id); |
| context_->preload_requests.Remove(fetch_event_id); |
| } |