Chromium Code Reviews| Index: chrome/browser/page_load_metrics/metrics_web_contents_observer.h |
| diff --git a/chrome/browser/page_load_metrics/metrics_web_contents_observer.h b/chrome/browser/page_load_metrics/metrics_web_contents_observer.h |
| index 89c92b8ab8c72b7c0551e3cdf01ee2c4b8b0d639..3e9ff48ecbb80d223ef6e11adc1beabd2fcf4ce4 100644 |
| --- a/chrome/browser/page_load_metrics/metrics_web_contents_observer.h |
| +++ b/chrome/browser/page_load_metrics/metrics_web_contents_observer.h |
| @@ -179,9 +179,11 @@ class PageLoadTracker { |
| // browser process or not. We need this to possibly clamp browser timestamp on |
| // a machine with inter process time tick skew. |
| void NotifyAbort(UserAbortType abort_type, |
| + bool user_initiated, |
| base::TimeTicks timestamp, |
| bool is_certainly_browser_timestamp); |
| void UpdateAbort(UserAbortType abort_type, |
| + bool user_initiated, |
| base::TimeTicks timestamp, |
| bool is_certainly_browser_timestamp); |
| @@ -216,6 +218,7 @@ class PageLoadTracker { |
| base::TimeTicks* event_time); |
| void UpdateAbortInternal(UserAbortType abort_type, |
| + bool user_initiated, |
| base::TimeTicks timestamp, |
| bool is_certainly_browser_timestamp); |
| @@ -249,6 +252,11 @@ class PageLoadTracker { |
| // Will be ABORT_NONE if we have not aborted this load yet. Otherwise will |
| // be the first abort action the user performed. |
| UserAbortType abort_type_; |
| + |
| + // This boolean is only an approximation. As the aborts pipeline is updated, |
| + // more abort types will have this set to true. |
| + bool abort_user_initiated_; |
|
shivanisha
2016/08/11 19:23:01
May be briefly explain in the comment on why this
Charlie Harrison
2016/08/12 17:51:30
Done.
|
| + |
| base::TimeTicks abort_time_; |
| // We record separate metrics for events that occur after a background, |
| @@ -263,6 +271,10 @@ class PageLoadTracker { |
| ui::PageTransition page_transition_; |
| + // This is derived from the user gesture bit it in the renderer. For browser |
| + // initiated navigations this will always be true. |
| + bool user_gesture_; |
|
shivanisha
2016/08/11 19:23:01
typo: bit it
Charlie Harrison
2016/08/12 17:51:30
Done.
|
| + |
| // This is a subtle member. If a provisional load A gets aborted by |
| // provisional load B, which gets aborted by C that eventually commits, then |
| // there exists an abort chain of length 2, starting at A's navigation_start. |
| @@ -340,8 +352,9 @@ class MetricsWebContentsObserver |
| // Notify all loads, provisional and committed, that we performed an action |
| // that might abort them. |
| - void NotifyAbortAllLoads(UserAbortType abort_type); |
| + void NotifyAbortAllLoads(UserAbortType abort_type, bool user_initiated); |
| void NotifyAbortAllLoadsWithTimestamp(UserAbortType abort_type, |
| + bool user_initiated, |
| base::TimeTicks timestamp, |
| bool is_certainly_browser_timestamp); |