| Index: chrome/browser/instant/instant_controller.cc
|
| diff --git a/chrome/browser/instant/instant_controller.cc b/chrome/browser/instant/instant_controller.cc
|
| index ffbfc3e855cdebcca4f7ce391336118fa136bdee..22bbd069968d028b8910caaee50b71073dee0c60 100644
|
| --- a/chrome/browser/instant/instant_controller.cc
|
| +++ b/chrome/browser/instant/instant_controller.cc
|
| @@ -175,8 +175,8 @@ bool InstantController::Update(TabContentsWrapper* tab_contents,
|
| // trial to normal mode, with no intervening call to DestroyPreviewContents().
|
| // This would leave the loader in a weird state, which would manifest if the
|
| // user pressed <Enter> without calling Update(). TODO(sreeram): Handle it.
|
| - if (InstantFieldTrial::IsHiddenExperiment(tab_contents->profile())) {
|
| - // For the HIDDEN field trial we process |user_text| at commit time, which
|
| + if (InstantFieldTrial::IsSilentExperiment(tab_contents->profile())) {
|
| + // For the SILENT field trial we process |user_text| at commit time, which
|
| // means we're never really out of date.
|
| is_out_of_date_ = false;
|
| loader_->MaybeLoadInstantURL(tab_contents, template_url);
|
| @@ -236,9 +236,12 @@ bool InstantController::PrepareForCommit() {
|
| if (is_out_of_date_ || !loader_.get())
|
| return false;
|
|
|
| - // If we are not in the HIDDEN field trial, return the status of the preview.
|
| - if (!InstantFieldTrial::IsHiddenExperiment(tab_contents_->profile()))
|
| + // If we are not in the HIDDEN or SILENT field trials, return the status of
|
| + // the preview.
|
| + if (!InstantFieldTrial::IsHiddenExperiment(tab_contents_->profile()) &&
|
| + !InstantFieldTrial::IsSilentExperiment(tab_contents_->profile())) {
|
| return IsCurrent();
|
| + }
|
|
|
| TemplateURLService* model = TemplateURLServiceFactory::GetForProfile(
|
| tab_contents_->profile());
|
| @@ -419,7 +422,10 @@ void InstantController::SetSuggestedTextFor(
|
| InstantLoader* loader,
|
| const string16& text,
|
| InstantCompleteBehavior behavior) {
|
| - delegate_->SetSuggestedText(text, behavior);
|
| + if (!is_out_of_date_ &&
|
| + !InstantFieldTrial::IsHiddenExperiment(tab_contents_->profile())) {
|
| + delegate_->SetSuggestedText(text, behavior);
|
| + }
|
| }
|
|
|
| gfx::Rect InstantController::GetInstantBounds() {
|
| @@ -460,6 +466,11 @@ void InstantController::SwappedTabContents(InstantLoader* loader) {
|
| }
|
|
|
| void InstantController::UpdateIsDisplayable() {
|
| + if (!is_out_of_date_ &&
|
| + InstantFieldTrial::IsHiddenExperiment(tab_contents_->profile())) {
|
| + return;
|
| + }
|
| +
|
| bool displayable =
|
| (!is_out_of_date_ && loader_.get() && loader_->ready() &&
|
| loader_->http_status_ok());
|
| @@ -489,6 +500,9 @@ void InstantController::UpdateLoader(const TemplateURL* template_url,
|
| loader_->Update(tab_contents_, template_url, url, transition_type, user_text,
|
| verbatim, suggested_text);
|
| UpdateIsDisplayable();
|
| + // For the HIDDEN field trial, don't send back suggestions to the omnibox.
|
| + if (InstantFieldTrial::IsHiddenExperiment(tab_contents_->profile()))
|
| + suggested_text->clear();
|
| }
|
|
|
| bool InstantController::ShouldUseInstant(const AutocompleteMatch& match) {
|
|
|