Chromium Code Reviews| Index: chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_observer.cc |
| diff --git a/chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_observer.cc b/chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_observer.cc |
| index 06beda69a78a05cc10b8b946f221efe066c9d09d..fce6cb090ce59254d26a9cd5ccd7250f0aa1c696 100644 |
| --- a/chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_observer.cc |
| +++ b/chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_observer.cc |
| @@ -65,13 +65,22 @@ const char kHistogramAbortForwardBackUserInitiated[] = |
| "PageLoad.AbortTiming.ForwardBackNavigation.BeforeCommit.UserInitiated"; |
| const char kHistogramAbortReloadUserInitiated[] = |
| "PageLoad.AbortTiming.Reload.BeforeCommit.UserInitiated"; |
| +const char kHistogramAbortStopUserInitiated[] = |
| + "PageLoad.AbortTiming.Stop.BeforeCommit.UserInitiated"; |
| +const char kHistogramAbortCloseUserInitiated[] = |
| + "PageLoad.AbortTiming.Close.BeforeCommit.UserInitiated"; |
| +const char kHistogramAbortBackgroundUserInitiated[] = |
| + "PageLoad.AbortTiming.Background.BeforeCommit.UserInitiated"; |
| +const char kHistogramAbortOtherUserInitiated[] = |
| + "PageLoad.AbortTiming.Other.BeforeCommit.UserInitiated"; |
| } // namespace internal |
| namespace { |
| bool IsAbortUserInitiated(const page_load_metrics::PageLoadExtraInfo& info) { |
|
Bryan McQuade
2016/11/10 15:35:41
thinking about this more, do we care about whether
Charlie Harrison
2016/11/10 20:33:04
I'm on the fence about this. I feel like checking
Bryan McQuade
2016/11/10 20:58:18
That seems reasonable to me. I could see it being
|
| - return info.abort_user_initiated && info.user_gesture; |
| + return info.user_initiated && |
| + info.abort_type != UserAbortType::ABORT_CLIENT_REDIRECT; |
| } |
| void RecordAbortBeforeCommit(UserAbortType abort_type, |
| @@ -109,18 +118,34 @@ void RecordAbortBeforeCommit(UserAbortType abort_type, |
| case UserAbortType::ABORT_STOP: |
| PAGE_LOAD_HISTOGRAM(internal::kHistogramAbortStopBeforeCommit, |
| time_to_abort); |
| + if (user_initiated) { |
| + PAGE_LOAD_HISTOGRAM(internal::kHistogramAbortStopUserInitiated, |
| + time_to_abort); |
| + } |
| return; |
| case UserAbortType::ABORT_CLOSE: |
| PAGE_LOAD_HISTOGRAM(internal::kHistogramAbortCloseBeforeCommit, |
| time_to_abort); |
| + if (user_initiated) { |
| + PAGE_LOAD_HISTOGRAM(internal::kHistogramAbortCloseUserInitiated, |
| + time_to_abort); |
| + } |
| return; |
| case UserAbortType::ABORT_BACKGROUND: |
| PAGE_LOAD_HISTOGRAM(internal::kHistogramAbortBackgroundBeforeCommit, |
| time_to_abort); |
| + if (user_initiated) { |
| + PAGE_LOAD_HISTOGRAM(internal::kHistogramAbortBackgroundUserInitiated, |
| + time_to_abort); |
| + } |
| return; |
| case UserAbortType::ABORT_OTHER: |
| PAGE_LOAD_HISTOGRAM(internal::kHistogramAbortOtherBeforeCommit, |
| time_to_abort); |
| + if (user_initiated) { |
| + PAGE_LOAD_HISTOGRAM(internal::kHistogramAbortOtherUserInitiated, |
| + time_to_abort); |
| + } |
| return; |
| case UserAbortType::ABORT_NONE: |
| case UserAbortType::ABORT_LAST_ENTRY: |