| 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 "base/macros.h" | 7 #include "base/macros.h" |
| 8 #include "base/memory/ptr_util.h" | 8 #include "base/memory/ptr_util.h" |
| 9 #if defined(OS_ANDROID) |
| 10 #include "chrome/browser/page_load_metrics/observers/android_page_load_metrics_o
bserver.h" |
| 11 #endif // OS_ANDROID |
| 9 #include "chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_ob
server.h" | 12 #include "chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_ob
server.h" |
| 10 #include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_obse
rver.h" | 13 #include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_obse
rver.h" |
| 11 #include "chrome/browser/page_load_metrics/observers/data_reduction_proxy_metric
s_observer.h" | 14 #include "chrome/browser/page_load_metrics/observers/data_reduction_proxy_metric
s_observer.h" |
| 12 #include "chrome/browser/page_load_metrics/observers/document_write_page_load_me
trics_observer.h" | 15 #include "chrome/browser/page_load_metrics/observers/document_write_page_load_me
trics_observer.h" |
| 13 #include "chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_
observer.h" | 16 #include "chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_
observer.h" |
| 14 #include "chrome/browser/page_load_metrics/observers/google_captcha_observer.h" | 17 #include "chrome/browser/page_load_metrics/observers/google_captcha_observer.h" |
| 15 #include "chrome/browser/page_load_metrics/observers/https_engagement_metrics/ht
tps_engagement_page_load_metrics_observer.h" | 18 #include "chrome/browser/page_load_metrics/observers/https_engagement_metrics/ht
tps_engagement_page_load_metrics_observer.h" |
| 16 #include "chrome/browser/page_load_metrics/observers/service_worker_page_load_me
trics_observer.h" | 19 #include "chrome/browser/page_load_metrics/observers/service_worker_page_load_me
trics_observer.h" |
| 17 #include "chrome/browser/page_load_metrics/observers/stale_while_revalidate_metr
ics_observer.h" | 20 #include "chrome/browser/page_load_metrics/observers/stale_while_revalidate_metr
ics_observer.h" |
| 18 #include "chrome/browser/prerender/prerender_contents.h" | 21 #include "chrome/browser/prerender/prerender_contents.h" |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 63 // TODO(ricea): Remove this in April 2016 or before. crbug.com/348877 | 66 // TODO(ricea): Remove this in April 2016 or before. crbug.com/348877 |
| 64 tracker->AddObserver( | 67 tracker->AddObserver( |
| 65 base::WrapUnique(new chrome::StaleWhileRevalidateMetricsObserver())); | 68 base::WrapUnique(new chrome::StaleWhileRevalidateMetricsObserver())); |
| 66 tracker->AddObserver( | 69 tracker->AddObserver( |
| 67 base::WrapUnique(new DocumentWritePageLoadMetricsObserver())); | 70 base::WrapUnique(new DocumentWritePageLoadMetricsObserver())); |
| 68 tracker->AddObserver( | 71 tracker->AddObserver( |
| 69 base::WrapUnique(new ServiceWorkerPageLoadMetricsObserver())); | 72 base::WrapUnique(new ServiceWorkerPageLoadMetricsObserver())); |
| 70 tracker->AddObserver( | 73 tracker->AddObserver( |
| 71 base::WrapUnique(new HttpsEngagementPageLoadMetricsObserver( | 74 base::WrapUnique(new HttpsEngagementPageLoadMetricsObserver( |
| 72 web_contents_->GetBrowserContext()))); | 75 web_contents_->GetBrowserContext()))); |
| 76 #if defined(OS_ANDROID) |
| 77 tracker->AddObserver( |
| 78 base::WrapUnique(new AndroidPageLoadMetricsObserver(web_contents_))); |
| 79 #endif // OS_ANDROID |
| 73 } | 80 } |
| 74 | 81 |
| 75 bool PageLoadMetricsEmbedder::IsPrerendering( | 82 bool PageLoadMetricsEmbedder::IsPrerendering( |
| 76 content::WebContents* web_contents) { | 83 content::WebContents* web_contents) { |
| 77 return prerender::PrerenderContents::FromWebContents(web_contents) != nullptr; | 84 return prerender::PrerenderContents::FromWebContents(web_contents) != nullptr; |
| 78 } | 85 } |
| 79 | 86 |
| 80 bool PageLoadMetricsEmbedder::IsNewTabPageUrl(const GURL& url) { | 87 bool PageLoadMetricsEmbedder::IsNewTabPageUrl(const GURL& url) { |
| 81 Profile* profile = | 88 Profile* profile = |
| 82 Profile::FromBrowserContext(web_contents_->GetBrowserContext()); | 89 Profile::FromBrowserContext(web_contents_->GetBrowserContext()); |
| 83 if (!profile) | 90 if (!profile) |
| 84 return false; | 91 return false; |
| 85 return search::IsInstantNTPURL(url, profile); | 92 return search::IsInstantNTPURL(url, profile); |
| 86 } | 93 } |
| 87 | 94 |
| 88 } // namespace | 95 } // namespace |
| 89 | 96 |
| 90 void InitializePageLoadMetricsForWebContents( | 97 void InitializePageLoadMetricsForWebContents( |
| 91 content::WebContents* web_contents) { | 98 content::WebContents* web_contents) { |
| 92 page_load_metrics::MetricsWebContentsObserver::CreateForWebContents( | 99 page_load_metrics::MetricsWebContentsObserver::CreateForWebContents( |
| 93 web_contents, | 100 web_contents, |
| 94 base::WrapUnique(new PageLoadMetricsEmbedder(web_contents))); | 101 base::WrapUnique(new PageLoadMetricsEmbedder(web_contents))); |
| 95 } | 102 } |
| 96 | 103 |
| 97 } // namespace chrome | 104 } // namespace chrome |
| OLD | NEW |