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

Side by Side Diff: chrome/browser/page_load_metrics/observers/no_state_prefetch_page_load_metrics_observer.cc

Issue 2859393002: Report page load timing information for child frames. (Closed)
Patch Set: rebase Created 3 years, 7 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "chrome/browser/page_load_metrics/observers/no_state_prefetch_page_load _metrics_observer.h" 5 #include "chrome/browser/page_load_metrics/observers/no_state_prefetch_page_load _metrics_observer.h"
6 6
7 #include "base/memory/ptr_util.h" 7 #include "base/memory/ptr_util.h"
8 #include "chrome/browser/prerender/prerender_manager.h" 8 #include "chrome/browser/prerender/prerender_manager.h"
9 #include "chrome/browser/prerender/prerender_manager_factory.h" 9 #include "chrome/browser/prerender/prerender_manager_factory.h"
10 #include "content/public/browser/navigation_handle.h" 10 #include "content/public/browser/navigation_handle.h"
(...skipping 25 matching lines...) Expand all
36 NoStatePrefetchPageLoadMetricsObserver::OnCommit( 36 NoStatePrefetchPageLoadMetricsObserver::OnCommit(
37 content::NavigationHandle* navigation_handle) { 37 content::NavigationHandle* navigation_handle) {
38 const net::HttpResponseHeaders* response_headers = 38 const net::HttpResponseHeaders* response_headers =
39 navigation_handle->GetResponseHeaders(); 39 navigation_handle->GetResponseHeaders();
40 40
41 is_no_store_ = response_headers && 41 is_no_store_ = response_headers &&
42 response_headers->HasHeaderValue("cache-control", "no-store"); 42 response_headers->HasHeaderValue("cache-control", "no-store");
43 return CONTINUE_OBSERVING; 43 return CONTINUE_OBSERVING;
44 } 44 }
45 45
46 void NoStatePrefetchPageLoadMetricsObserver::OnFirstContentfulPaint( 46 void NoStatePrefetchPageLoadMetricsObserver::OnFirstContentfulPaintInPage(
47 const page_load_metrics::PageLoadTiming& timing, 47 const page_load_metrics::PageLoadTiming& timing,
48 const page_load_metrics::PageLoadExtraInfo& extra_info) { 48 const page_load_metrics::PageLoadExtraInfo& extra_info) {
49 DCHECK(timing.paint_timing.first_contentful_paint.has_value()); 49 DCHECK(timing.paint_timing.first_contentful_paint.has_value());
50 prerender_manager_->RecordNoStateFirstContentfulPaint( 50 prerender_manager_->RecordNoStateFirstContentfulPaint(
51 extra_info.start_url, is_no_store_, was_hidden_, 51 extra_info.start_url, is_no_store_, was_hidden_,
52 *timing.paint_timing.first_contentful_paint); 52 *timing.paint_timing.first_contentful_paint);
53 } 53 }
54 54
55 page_load_metrics::PageLoadMetricsObserver::ObservePolicy 55 page_load_metrics::PageLoadMetricsObserver::ObservePolicy
56 NoStatePrefetchPageLoadMetricsObserver::OnHidden( 56 NoStatePrefetchPageLoadMetricsObserver::OnHidden(
57 const page_load_metrics::PageLoadTiming& timing, 57 const page_load_metrics::PageLoadTiming& timing,
58 const page_load_metrics::PageLoadExtraInfo& extra_info) { 58 const page_load_metrics::PageLoadExtraInfo& extra_info) {
59 was_hidden_ = true; 59 was_hidden_ = true;
60 return CONTINUE_OBSERVING; 60 return CONTINUE_OBSERVING;
61 } 61 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698