Chromium Code Reviews| Index: chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.cc |
| diff --git a/chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.cc b/chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.cc |
| index 08ce2edad84e68cebaf78537d9692e9701aa216e..b0ac979ed5a0051ec34f18f3588c741a03bff88a 100644 |
| --- a/chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.cc |
| +++ b/chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.cc |
| @@ -104,12 +104,6 @@ const char kBackgroundHistogramFirstContentfulPaint[] = |
| "PageLoad.PaintTiming.NavigationToFirstContentfulPaint.Background"; |
| const char kHistogramFirstMeaningfulPaint[] = |
| "PageLoad.Experimental.PaintTiming.NavigationToFirstMeaningfulPaint"; |
| -const char kHistogramFirstMeaningfulPaintNoUserInput[] = |
| - "PageLoad.Experimental.PaintTiming.NavigationToFirstMeaningfulPaint." |
| - "NoUserInput"; |
| -const char kHistogramFirstMeaningfulPaintHadUserInput[] = |
| - "PageLoad.Experimental.PaintTiming.NavigationToFirstMeaningfulPaint." |
| - "HadUserInput"; |
| const char kHistogramParseStartToFirstMeaningfulPaint[] = |
| "PageLoad.Experimental.PaintTiming.ParseStartToFirstMeaningfulPaint"; |
| const char kHistogramParseStartToFirstContentfulPaint[] = |
| @@ -120,8 +114,6 @@ const char kHistogramParseStart[] = |
| "PageLoad.ParseTiming.NavigationToParseStart"; |
| const char kBackgroundHistogramParseStart[] = |
| "PageLoad.ParseTiming.NavigationToParseStart.Background"; |
| -const char kHistogramFirstMeaningfulPaintToNetworkStable[] = |
| - "PageLoad.Experimental.PaintTiming.FirstMeaningfulPaintToNetworkStable"; |
| const char kHistogramParseDuration[] = "PageLoad.ParseTiming.ParseDuration"; |
| const char kBackgroundHistogramParseDuration[] = |
| "PageLoad.ParseTiming.ParseDuration.Background"; |
| @@ -207,8 +199,6 @@ const char kHistogramFirstContentfulPaintUserInitiated[] = |
| const char kHistogramFirstMeaningfulPaintStatus[] = |
| "PageLoad.Experimental.PaintTiming.FirstMeaningfulPaintStatus"; |
| -const char kHistogramFirstMeaningfulPaintSignalStatus2[] = |
| - "PageLoad.Experimental.PaintTiming.FirstMeaningfulPaintSignalStatus2"; |
| const char kHistogramFirstNonScrollInputAfterFirstPaint[] = |
| "PageLoad.InputTiming.NavigationToFirstNonScroll.AfterPaint"; |
| @@ -475,29 +465,17 @@ void CorePageLoadMetricsObserver::OnFirstContentfulPaintInPage( |
| void CorePageLoadMetricsObserver::OnFirstMeaningfulPaintInMainFrameDocument( |
| const page_load_metrics::mojom::PageLoadTiming& timing, |
| const page_load_metrics::PageLoadExtraInfo& info) { |
| - base::TimeTicks paint = info.navigation_start + |
| - timing.paint_timing->first_meaningful_paint.value(); |
| - if (first_user_interaction_after_first_paint_.is_null() || |
| - paint < first_user_interaction_after_first_paint_) { |
| - if (WasStartedInForegroundOptionalEventInForeground( |
| - timing.paint_timing->first_meaningful_paint, info)) { |
| - PAGE_LOAD_HISTOGRAM(internal::kHistogramFirstMeaningfulPaint, |
| - timing.paint_timing->first_meaningful_paint.value()); |
| - PAGE_LOAD_HISTOGRAM(internal::kHistogramParseStartToFirstMeaningfulPaint, |
| - timing.paint_timing->first_meaningful_paint.value() - |
| - timing.parse_timing->parse_start.value()); |
| - PAGE_LOAD_HISTOGRAM( |
| - internal::kHistogramFirstMeaningfulPaintToNetworkStable, |
| - base::TimeTicks::Now() - paint); |
| - RecordFirstMeaningfulPaintStatus( |
| - internal::FIRST_MEANINGFUL_PAINT_RECORDED); |
| - } else { |
| - RecordFirstMeaningfulPaintStatus( |
| - internal::FIRST_MEANINGFUL_PAINT_BACKGROUNDED); |
| - } |
| + if (WasStartedInForegroundOptionalEventInForeground( |
| + timing.paint_timing->first_meaningful_paint, info)) { |
| + PAGE_LOAD_HISTOGRAM(internal::kHistogramFirstMeaningfulPaint, |
| + timing.paint_timing->first_meaningful_paint.value()); |
| + PAGE_LOAD_HISTOGRAM(internal::kHistogramParseStartToFirstMeaningfulPaint, |
| + timing.paint_timing->first_meaningful_paint.value() - |
| + timing.parse_timing->parse_start.value()); |
| + RecordFirstMeaningfulPaintStatus(internal::FIRST_MEANINGFUL_PAINT_RECORDED); |
| } else { |
| RecordFirstMeaningfulPaintStatus( |
| - internal::FIRST_MEANINGFUL_PAINT_USER_INTERACTION_BEFORE_FMP); |
| + internal::FIRST_MEANINGFUL_PAINT_BACKGROUNDED); |
|
Bryan McQuade
2017/06/08 17:47:12
if the status now only has 2 values, should we get
Kunihiko Sakamoto
2017/06/09 05:48:16
It has two more values, "User left the page before
|
| } |
| } |
| @@ -646,13 +624,6 @@ void CorePageLoadMetricsObserver::OnFailedProvisionalLoad( |
| void CorePageLoadMetricsObserver::OnUserInput( |
| const blink::WebInputEvent& event) { |
| base::TimeTicks now; |
| - if (!first_paint_.is_null() && |
| - first_user_interaction_after_first_paint_.is_null() && |
| - event.GetType() != blink::WebInputEvent::kMouseMove) { |
| - if (now.is_null()) |
| - now = base::TimeTicks::Now(); |
| - first_user_interaction_after_first_paint_ = now; |
| - } |
| if (first_paint_.is_null()) |
| return; |
| @@ -708,30 +679,6 @@ void CorePageLoadMetricsObserver::RecordTimingHistograms( |
| : internal:: |
| FIRST_MEANINGFUL_PAINT_DID_NOT_REACH_FIRST_CONTENTFUL_PAINT); |
| } |
| - |
| - if (timing.paint_timing->first_paint) { |
| - enum FirstMeaningfulPaintSignalStatus { |
| - HAD_USER_INPUT = 1 << 0, |
| - NETWORK_STABLE = 1 << 1, |
| - FIRST_MEANINGFUL_PAINT_SIGNAL_STATUS_LAST_ENTRY = 1 << 2 |
| - }; |
| - int signal_status = |
| - (first_user_interaction_after_first_paint_.is_null() ? 0 |
| - : HAD_USER_INPUT) + |
| - (timing.paint_timing->first_meaningful_paint ? NETWORK_STABLE : 0); |
| - UMA_HISTOGRAM_ENUMERATION( |
| - internal::kHistogramFirstMeaningfulPaintSignalStatus2, |
| - signal_status, FIRST_MEANINGFUL_PAINT_SIGNAL_STATUS_LAST_ENTRY); |
| - } |
| - if (timing.paint_timing->first_meaningful_paint) { |
| - if (first_user_interaction_after_first_paint_.is_null()) { |
| - PAGE_LOAD_HISTOGRAM(internal::kHistogramFirstMeaningfulPaintNoUserInput, |
| - timing.paint_timing->first_meaningful_paint.value()); |
| - } else { |
| - PAGE_LOAD_HISTOGRAM(internal::kHistogramFirstMeaningfulPaintHadUserInput, |
| - timing.paint_timing->first_meaningful_paint.value()); |
| - } |
| - } |
| } |
| void CorePageLoadMetricsObserver::RecordForegroundDurationHistograms( |