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

Side by Side Diff: chrome/browser/prerender/prerender_manager.cc

Issue 11348357: Add observer interface to PrerenderContents. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: _really_ fix windows build. Created 8 years 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/prerender/prerender_manager.h" 5 #include "chrome/browser/prerender/prerender_manager.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <functional> 8 #include <functional>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 401 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 412
413 if (!prerender_contents->load_start_time().is_null()) { 413 if (!prerender_contents->load_start_time().is_null()) {
414 histograms_->RecordTimeUntilUsed( 414 histograms_->RecordTimeUntilUsed(
415 prerender_contents->origin(), 415 prerender_contents->origin(),
416 GetCurrentTimeTicks() - prerender_contents->load_start_time()); 416 GetCurrentTimeTicks() - prerender_contents->load_start_time());
417 } 417 }
418 418
419 histograms_->RecordPerSessionCount(prerender_contents->origin(), 419 histograms_->RecordPerSessionCount(prerender_contents->origin(),
420 ++prerenders_per_session_count_); 420 ++prerenders_per_session_count_);
421 histograms_->RecordUsedPrerender(prerender_contents->origin()); 421 histograms_->RecordUsedPrerender(prerender_contents->origin());
422 prerender_contents->set_final_status(FINAL_STATUS_USED); 422 prerender_contents->SetFinalStatus(FINAL_STATUS_USED);
423 423
424 RenderViewHost* new_render_view_host = 424 RenderViewHost* new_render_view_host =
425 prerender_contents->prerender_contents()->web_contents()-> 425 prerender_contents->prerender_contents()->web_contents()->
426 GetRenderViewHost(); 426 GetRenderViewHost();
427 new_render_view_host->Send( 427 new_render_view_host->Send(
428 new PrerenderMsg_SetIsPrerendering(new_render_view_host->GetRoutingID(), 428 new PrerenderMsg_SetIsPrerendering(new_render_view_host->GetRoutingID(),
429 false)); 429 false));
430 430
431 // Start pending prerender requests from the PrerenderContents, if there are 431 // Start pending prerender requests from the PrerenderContents, if there are
432 // any. 432 // any.
(...skipping 743 matching lines...) Expand 10 before | Expand all | Expand 10 after
1176 return base::TimeTicks::Now(); 1176 return base::TimeTicks::Now();
1177 } 1177 }
1178 1178
1179 PrerenderContents* PrerenderManager::CreatePrerenderContents( 1179 PrerenderContents* PrerenderManager::CreatePrerenderContents(
1180 const GURL& url, 1180 const GURL& url,
1181 const content::Referrer& referrer, 1181 const content::Referrer& referrer,
1182 Origin origin, 1182 Origin origin,
1183 uint8 experiment_id) { 1183 uint8 experiment_id) {
1184 DCHECK(CalledOnValidThread()); 1184 DCHECK(CalledOnValidThread());
1185 return prerender_contents_factory_->CreatePrerenderContents( 1185 return prerender_contents_factory_->CreatePrerenderContents(
1186 this, prerender_tracker_, profile_, url, referrer, origin, experiment_id); 1186 this, profile_, url, referrer, origin, experiment_id);
1187 } 1187 }
1188 1188
1189 void PrerenderManager::SortActivePrerenders() { 1189 void PrerenderManager::SortActivePrerenders() {
1190 std::sort(active_prerenders_.begin(), active_prerenders_.end(), 1190 std::sort(active_prerenders_.begin(), active_prerenders_.end(),
1191 PrerenderData::OrderByExpiryTime()); 1191 PrerenderData::OrderByExpiryTime());
1192 } 1192 }
1193 1193
1194 PrerenderManager::PrerenderData* PrerenderManager::FindPrerenderData( 1194 PrerenderManager::PrerenderData* PrerenderManager::FindPrerenderData(
1195 const GURL& url, 1195 const GURL& url,
1196 const SessionStorageNamespace* session_storage_namespace) { 1196 const SessionStorageNamespace* session_storage_namespace) {
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
1357 if (!render_process_host || !render_process_host->GetBrowserContext()) 1357 if (!render_process_host || !render_process_host->GetBrowserContext())
1358 return NULL; 1358 return NULL;
1359 Profile* profile = Profile::FromBrowserContext( 1359 Profile* profile = Profile::FromBrowserContext(
1360 render_process_host->GetBrowserContext()); 1360 render_process_host->GetBrowserContext());
1361 if (!profile) 1361 if (!profile)
1362 return NULL; 1362 return NULL;
1363 return PrerenderManagerFactory::GetInstance()->GetForProfile(profile); 1363 return PrerenderManagerFactory::GetInstance()->GetForProfile(profile);
1364 } 1364 }
1365 1365
1366 } // namespace prerender 1366 } // namespace prerender
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698