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 <memory> | 7 #include <memory> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
(...skipping 16 matching lines...) Expand all Loading... |
27 #include "chrome/browser/page_load_metrics/observers/https_engagement_metrics/ht
tps_engagement_page_load_metrics_observer.h" | 27 #include "chrome/browser/page_load_metrics/observers/https_engagement_metrics/ht
tps_engagement_page_load_metrics_observer.h" |
28 #include "chrome/browser/page_load_metrics/observers/loading_predictor_page_load
_metrics_observer.h" | 28 #include "chrome/browser/page_load_metrics/observers/loading_predictor_page_load
_metrics_observer.h" |
29 #include "chrome/browser/page_load_metrics/observers/lofi_page_load_metrics_obse
rver.h" | 29 #include "chrome/browser/page_load_metrics/observers/lofi_page_load_metrics_obse
rver.h" |
30 #include "chrome/browser/page_load_metrics/observers/media_page_load_metrics_obs
erver.h" | 30 #include "chrome/browser/page_load_metrics/observers/media_page_load_metrics_obs
erver.h" |
31 #include "chrome/browser/page_load_metrics/observers/no_state_prefetch_page_load
_metrics_observer.h" | 31 #include "chrome/browser/page_load_metrics/observers/no_state_prefetch_page_load
_metrics_observer.h" |
32 #include "chrome/browser/page_load_metrics/observers/omnibox_suggestion_used_pag
e_load_metrics_observer.h" | 32 #include "chrome/browser/page_load_metrics/observers/omnibox_suggestion_used_pag
e_load_metrics_observer.h" |
33 #include "chrome/browser/page_load_metrics/observers/prerender_page_load_metrics
_observer.h" | 33 #include "chrome/browser/page_load_metrics/observers/prerender_page_load_metrics
_observer.h" |
34 #include "chrome/browser/page_load_metrics/observers/previews_page_load_metrics_
observer.h" | 34 #include "chrome/browser/page_load_metrics/observers/previews_page_load_metrics_
observer.h" |
35 #include "chrome/browser/page_load_metrics/observers/protocol_page_load_metrics_
observer.h" | 35 #include "chrome/browser/page_load_metrics/observers/protocol_page_load_metrics_
observer.h" |
36 #include "chrome/browser/page_load_metrics/observers/service_worker_page_load_me
trics_observer.h" | 36 #include "chrome/browser/page_load_metrics/observers/service_worker_page_load_me
trics_observer.h" |
| 37 #include "chrome/browser/page_load_metrics/observers/session_restore_foreground_
tab_page_load_metrics_observer.h" |
37 #include "chrome/browser/page_load_metrics/observers/subresource_filter_metrics_
observer.h" | 38 #include "chrome/browser/page_load_metrics/observers/subresource_filter_metrics_
observer.h" |
38 #include "chrome/browser/page_load_metrics/observers/tab_restore_page_load_metri
cs_observer.h" | 39 #include "chrome/browser/page_load_metrics/observers/tab_restore_page_load_metri
cs_observer.h" |
39 #include "chrome/browser/page_load_metrics/observers/ukm_page_load_metrics_obser
ver.h" | 40 #include "chrome/browser/page_load_metrics/observers/ukm_page_load_metrics_obser
ver.h" |
40 #include "chrome/browser/page_load_metrics/page_load_metrics_embedder_interface.
h" | 41 #include "chrome/browser/page_load_metrics/page_load_metrics_embedder_interface.
h" |
41 #include "chrome/browser/page_load_metrics/page_load_tracker.h" | 42 #include "chrome/browser/page_load_metrics/page_load_tracker.h" |
42 #include "chrome/browser/prerender/prerender_contents.h" | 43 #include "chrome/browser/prerender/prerender_contents.h" |
43 #include "chrome/browser/profiles/profile.h" | 44 #include "chrome/browser/profiles/profile.h" |
44 #include "chrome/browser/search/search.h" | 45 #include "chrome/browser/search/search.h" |
45 #include "components/rappor/rappor_service_impl.h" | 46 #include "components/rappor/rappor_service_impl.h" |
46 #include "content/public/browser/web_contents.h" | 47 #include "content/public/browser/web_contents.h" |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
122 #if defined(OS_ANDROID) | 123 #if defined(OS_ANDROID) |
123 tracker->AddObserver( | 124 tracker->AddObserver( |
124 base::MakeUnique<AndroidPageLoadMetricsObserver>(web_contents_)); | 125 base::MakeUnique<AndroidPageLoadMetricsObserver>(web_contents_)); |
125 #endif // OS_ANDROID | 126 #endif // OS_ANDROID |
126 std::unique_ptr<page_load_metrics::PageLoadMetricsObserver> | 127 std::unique_ptr<page_load_metrics::PageLoadMetricsObserver> |
127 loading_predictor_observer = | 128 loading_predictor_observer = |
128 LoadingPredictorPageLoadMetricsObserver::CreateIfNeeded( | 129 LoadingPredictorPageLoadMetricsObserver::CreateIfNeeded( |
129 web_contents_); | 130 web_contents_); |
130 if (loading_predictor_observer) | 131 if (loading_predictor_observer) |
131 tracker->AddObserver(std::move(loading_predictor_observer)); | 132 tracker->AddObserver(std::move(loading_predictor_observer)); |
| 133 std::unique_ptr<page_load_metrics::PageLoadMetricsObserver> |
| 134 session_restore_foreground_tab_observer = |
| 135 SessionRestoreForegroundTabPageLoadMetricsObserver:: |
| 136 CreateIfNeeded(); |
| 137 if (session_restore_foreground_tab_observer) |
| 138 tracker->AddObserver(std::move(session_restore_foreground_tab_observer)); |
132 } else { | 139 } else { |
133 std::unique_ptr<page_load_metrics::PageLoadMetricsObserver> | 140 std::unique_ptr<page_load_metrics::PageLoadMetricsObserver> |
134 prerender_observer = | 141 prerender_observer = |
135 PrerenderPageLoadMetricsObserver::CreateIfNeeded(web_contents_); | 142 PrerenderPageLoadMetricsObserver::CreateIfNeeded(web_contents_); |
136 if (prerender_observer) | 143 if (prerender_observer) |
137 tracker->AddObserver(std::move(prerender_observer)); | 144 tracker->AddObserver(std::move(prerender_observer)); |
138 } | 145 } |
139 tracker->AddObserver( | 146 tracker->AddObserver( |
140 base::MakeUnique<OmniboxSuggestionUsedMetricsObserver>(IsPrerendering())); | 147 base::MakeUnique<OmniboxSuggestionUsedMetricsObserver>(IsPrerendering())); |
141 tracker->AddObserver( | 148 tracker->AddObserver( |
(...skipping 21 matching lines...) Expand all Loading... |
163 | 170 |
164 void InitializePageLoadMetricsForWebContents( | 171 void InitializePageLoadMetricsForWebContents( |
165 content::WebContents* web_contents, | 172 content::WebContents* web_contents, |
166 const base::Optional<content::WebContents::CreateParams>& create_params) { | 173 const base::Optional<content::WebContents::CreateParams>& create_params) { |
167 page_load_metrics::MetricsWebContentsObserver::CreateForWebContents( | 174 page_load_metrics::MetricsWebContentsObserver::CreateForWebContents( |
168 web_contents, create_params, | 175 web_contents, create_params, |
169 base::MakeUnique<PageLoadMetricsEmbedder>(web_contents)); | 176 base::MakeUnique<PageLoadMetricsEmbedder>(web_contents)); |
170 } | 177 } |
171 | 178 |
172 } // namespace chrome | 179 } // namespace chrome |
OLD | NEW |