Index: chrome/browser/predictors/autocomplete_action_predictor.cc |
diff --git a/chrome/browser/predictors/autocomplete_action_predictor.cc b/chrome/browser/predictors/autocomplete_action_predictor.cc |
index c5ce8a101053afaf06d508d0849c689bb1c83edd..ef142e42b5da960ce8b4d59cac5e898f3ec9573e 100644 |
--- a/chrome/browser/predictors/autocomplete_action_predictor.cc |
+++ b/chrome/browser/predictors/autocomplete_action_predictor.cc |
@@ -26,6 +26,7 @@ |
#include "chrome/browser/predictors/predictor_database.h" |
#include "chrome/browser/predictors/predictor_database_factory.h" |
#include "chrome/browser/prerender/prerender_field_trial.h" |
+#include "chrome/browser/prerender/prerender_handle.h" |
#include "chrome/browser/prerender/prerender_manager.h" |
#include "chrome/browser/prerender/prerender_manager_factory.h" |
#include "chrome/browser/profiles/profile.h" |
@@ -153,6 +154,20 @@ void AutocompleteActionPredictor::ClearTransitionalMatches() { |
transitional_matches_.clear(); |
} |
+void AutocompleteActionPredictor::StartPrerendering( |
+ const GURL& url, |
+ content::SessionStorageNamespace* session_storage_namespace, |
+ gfx::Size size) { |
+ if (prerender::PrerenderManager* prerender_manager = |
+ prerender::PrerenderManagerFactory::GetForProfile(profile_)) { |
+ prerender_handle_.reset( |
+ prerender_manager->AddPrerenderFromOmnibox( |
+ url, session_storage_namespace, size)); |
+ } else { |
+ prerender_handle_.reset(); |
+ } |
+} |
+ |
// Given a match, return a recommended action. |
AutocompleteActionPredictor::Action |
AutocompleteActionPredictor::RecommendAction( |
@@ -308,6 +323,10 @@ void AutocompleteActionPredictor::OnOmniboxOpenedUrl( |
prerender::IsOmniboxEnabled(profile_)); |
const GURL& opened_url = match.destination_url; |
+ |
+ prerender_handle_->OnNavigateAway(); |
dominich
2012/07/02 20:43:03
I know that OnNavigateAway doesn't immediately del
gavinp
2012/07/03 16:41:02
Done. I'll add it back when prerenders become long
|
+ prerender_handle_.reset(); |
+ |
const string16 lower_user_text(base::i18n::ToLower(log.text)); |
// Traverse transitional matches for those that have a user_text that is a |