| Index: chrome/browser/instant/instant_controller.cc
|
| diff --git a/chrome/browser/instant/instant_controller.cc b/chrome/browser/instant/instant_controller.cc
|
| index 65ba84f4f33ea7ffb97eb38d291decb36f25be5f..06bb4109299e3ad6a2da0a47eda9bc506125a984 100644
|
| --- a/chrome/browser/instant/instant_controller.cc
|
| +++ b/chrome/browser/instant/instant_controller.cc
|
| @@ -356,6 +356,33 @@ void InstantController::OnAutocompleteLostFocus(
|
| }
|
| #endif
|
|
|
| +void InstantController::OnAutocompleteGotFocus(
|
| + TabContentsWrapper* tab_contents) {
|
| + CommandLine* cl = CommandLine::ForCurrentProcess();
|
| + if (!cl->HasSwitch(switches::kPreloadInstantSearch))
|
| + return;
|
| +
|
| + if (is_active_)
|
| + return;
|
| +
|
| + TemplateURLModel* model = tab_contents->profile()->GetTemplateURLModel();
|
| + if (!model)
|
| + return;
|
| +
|
| + const TemplateURL* template_url = model->GetDefaultSearchProvider();
|
| + if (!template_url)
|
| + return;
|
| +
|
| + if (tab_contents != tab_contents_)
|
| + DestroyPreviewContents();
|
| + tab_contents_ = tab_contents;
|
| +
|
| + if (!loader_manager_.get())
|
| + loader_manager_.reset(new InstantLoaderManager(this));
|
| + loader_manager_->GetInstantLoader(template_url->id())
|
| + ->MaybeLoadInstantURL(tab_contents, template_url);
|
| +}
|
| +
|
| TabContentsWrapper* InstantController::ReleasePreviewContents(
|
| InstantCommitType type) {
|
| if (!loader_manager_.get())
|
|
|