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

Side by Side Diff: components/page_load_metrics/browser/page_load_metrics_observer.h

Issue 1441393002: Add UMA to count the number of Google CAPTCHA pages shown and solved by users. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Small fix Created 5 years, 1 month 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 #ifndef COMPONENTS_PAGE_LOAD_METRICS_BROWSER_PAGE_LOAD_METRICS_OBSERVER_H_ 5 #ifndef COMPONENTS_PAGE_LOAD_METRICS_BROWSER_PAGE_LOAD_METRICS_OBSERVER_H_
6 #define COMPONENTS_PAGE_LOAD_METRICS_BROWSER_PAGE_LOAD_METRICS_OBSERVER_H_ 6 #define COMPONENTS_PAGE_LOAD_METRICS_BROWSER_PAGE_LOAD_METRICS_OBSERVER_H_
7 7
8 #include "components/page_load_metrics/common/page_load_timing.h" 8 #include "components/page_load_metrics/common/page_load_timing.h"
9 #include "content/public/browser/navigation_handle.h" 9 #include "content/public/browser/navigation_handle.h"
10 10
(...skipping 22 matching lines...) Expand all
33 // OnCommit to be fired without a subsequent OnComplete (i.e. if an error 33 // OnCommit to be fired without a subsequent OnComplete (i.e. if an error
34 // occurs or we don't have any metrics to log). PageLoadMetricsObservers are 34 // occurs or we don't have any metrics to log). PageLoadMetricsObservers are
35 // required to stop observing (call PageLoadMetricsObservable::RemoveObserver) 35 // required to stop observing (call PageLoadMetricsObservable::RemoveObserver)
36 // some time before the OnPageLoadMetricsGoingAway trigger finishes. If this 36 // some time before the OnPageLoadMetricsGoingAway trigger finishes. If this
37 // class is destroyed before the PageLoadMetricsObservable, it should call 37 // class is destroyed before the PageLoadMetricsObservable, it should call
38 // RemoveObserver in its destructor. 38 // RemoveObserver in its destructor.
39 class PageLoadMetricsObserver { 39 class PageLoadMetricsObserver {
40 public: 40 public:
41 virtual ~PageLoadMetricsObserver() {} 41 virtual ~PageLoadMetricsObserver() {}
42 42
43 // OnRedirect is triggered when a page load redirects to another URL.
44 // The navigation handle holds relevant data for the navigation, but will
45 // be destroyed soon after this call. Don't hold a reference to it.
46 virtual void OnRedirect(content::NavigationHandle* navigation_handle) {}
47
43 // OnCommit is triggered when a page load commits, i.e. when we receive the 48 // OnCommit is triggered when a page load commits, i.e. when we receive the
44 // first data for the request. The navigation handle holds relevant data for 49 // first data for the request. The navigation handle holds relevant data for
45 // the navigation, but will be destroyed soon after this call. Don't hold a 50 // the navigation, but will be destroyed soon after this call. Don't hold a
46 // reference to it. 51 // reference to it.
47 virtual void OnCommit(content::NavigationHandle* navigation_handle) {} 52 virtual void OnCommit(content::NavigationHandle* navigation_handle) {}
48 53
49 // OnComplete is triggered when we are ready to record metrics for this page 54 // OnComplete is triggered when we are ready to record metrics for this page
50 // load. This will happen some time after commit, and will be triggered as 55 // load. This will happen some time after commit, and will be triggered as
51 // long as we've received some data about the page load. The 56 // long as we've received some data about the page load. The
52 // PageLoadTiming struct contains timing data and the PageLoadExtraInfo struct 57 // PageLoadTiming struct contains timing data and the PageLoadExtraInfo struct
(...skipping 12 matching lines...) Expand all
65 class PageLoadMetricsObservable { 70 class PageLoadMetricsObservable {
66 public: 71 public:
67 virtual ~PageLoadMetricsObservable() {} 72 virtual ~PageLoadMetricsObservable() {}
68 virtual void AddObserver(PageLoadMetricsObserver* observer) = 0; 73 virtual void AddObserver(PageLoadMetricsObserver* observer) = 0;
69 virtual void RemoveObserver(PageLoadMetricsObserver* observer) = 0; 74 virtual void RemoveObserver(PageLoadMetricsObserver* observer) = 0;
70 }; 75 };
71 76
72 } // namespace page_load_metrics 77 } // namespace page_load_metrics
73 78
74 #endif // COMPONENTS_PAGE_LOAD_METRICS_BROWSER_PAGE_LOAD_METRICS_OBSERVER_H_ 79 #endif // COMPONENTS_PAGE_LOAD_METRICS_BROWSER_PAGE_LOAD_METRICS_OBSERVER_H_
OLDNEW
« no previous file with comments | « components/page_load_metrics/browser/metrics_web_contents_observer.cc ('k') | tools/metrics/histograms/histograms.xml » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698