OLD | NEW |
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 #include "chrome/browser/page_load_metrics/page_load_metrics_initialize.h" | 5 #include "chrome/browser/page_load_metrics/page_load_metrics_initialize.h" |
6 | 6 |
7 #include "chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_
observer.h" | 7 #include "chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_
observer.h" |
| 8 #include "chrome/browser/page_load_metrics/observers/google_captcha_observer.h" |
8 #include "components/page_load_metrics/browser/metrics_web_contents_observer.h" | 9 #include "components/page_load_metrics/browser/metrics_web_contents_observer.h" |
9 #include "components/rappor/rappor_service.h" | 10 #include "components/rappor/rappor_service.h" |
10 #include "content/public/browser/web_contents.h" | 11 #include "content/public/browser/web_contents.h" |
11 | 12 |
12 namespace { | 13 namespace { |
13 | 14 |
14 void RegisterPageLoadMetricsObservers( | 15 void RegisterPageLoadMetricsObservers( |
15 page_load_metrics::PageLoadMetricsObservable* metrics) { | 16 page_load_metrics::PageLoadMetricsObservable* metrics) { |
16 // Attach observers scoped to the web contents here. | 17 // Attach observers scoped to the web contents here. |
17 | 18 |
18 // This is a self-destruct class, and will delete itself when triggered by | 19 // This is a self-destruct class, and will delete itself when triggered by |
19 // OnPageLoadMetricsGoingAway. | 20 // OnPageLoadMetricsGoingAway. |
20 metrics->AddObserver(new FromGWSPageLoadMetricsObserver(metrics)); | 21 metrics->AddObserver(new FromGWSPageLoadMetricsObserver(metrics)); |
| 22 metrics->AddObserver( |
| 23 new google_captcha_observer::GoogleCaptchaObserver(metrics)); |
21 } | 24 } |
22 | 25 |
23 } // namespace | 26 } // namespace |
24 | 27 |
25 namespace chrome { | 28 namespace chrome { |
26 | 29 |
27 void InitializePageLoadMetricsForWebContents( | 30 void InitializePageLoadMetricsForWebContents( |
28 content::WebContents* web_contents, | 31 content::WebContents* web_contents, |
29 rappor::RapporService* rappor_service) { | 32 rappor::RapporService* rappor_service) { |
30 RegisterPageLoadMetricsObservers( | 33 RegisterPageLoadMetricsObservers( |
31 page_load_metrics::MetricsWebContentsObserver::CreateForWebContents( | 34 page_load_metrics::MetricsWebContentsObserver::CreateForWebContents( |
32 web_contents, rappor_service)); | 35 web_contents, rappor_service)); |
33 } | 36 } |
34 | 37 |
35 } // namespace chrome | 38 } // namespace chrome |
OLD | NEW |