From c067b0f3974531ca5f8e197f85a6143cf4fd8c35 Mon Sep 17 00:00:00 2001 From: "mirandac@chromium.org" Date: Thu, 5 May 2011 12:41:14 +0000 Subject: Turn off the search engine selector for the Russian locale. BUG=81578 TEST=no search engine selector in organic builds in Russian locale. Review URL: http://codereview.chromium.org/6927022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84235 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/first_run/first_run.cc | 8 ++++++++ chrome/browser/first_run/first_run.h | 4 ++++ chrome/browser/ui/cocoa/first_run_dialog.mm | 3 ++- chrome/browser/ui/gtk/first_run_dialog.cc | 4 +++- chrome/browser/ui/views/first_run_search_engine_view.cc | 5 ++++- 5 files changed, 21 insertions(+), 3 deletions(-) diff --git a/chrome/browser/first_run/first_run.cc b/chrome/browser/first_run/first_run.cc index f06f707..a7390ec 100644 --- a/chrome/browser/first_run/first_run.cc +++ b/chrome/browser/first_run/first_run.cc @@ -396,6 +396,14 @@ bool FirstRun::SetPersonalDataManagerFirstRunPref() { } // static +bool FirstRun::SearchEngineSelectorDisallowed() { + // For now, the only case in which the search engine dialog should never be + // shown is if the locale is Russia. + std::string locale = g_browser_process->GetApplicationLocale(); + return (locale == "ru"); +} + +// static bool FirstRun::SetOEMFirstRunBubblePref() { PrefService* local_state = g_browser_process->local_state(); if (!local_state) diff --git a/chrome/browser/first_run/first_run.h b/chrome/browser/first_run/first_run.h index b5d27e3..1bdf1cd 100644 --- a/chrome/browser/first_run/first_run.h +++ b/chrome/browser/first_run/first_run.h @@ -141,6 +141,10 @@ class FirstRun { // Returns false if the pref could not be set. static bool SetPersonalDataManagerFirstRunPref(); + // True if special circumstances should prevent the search engine ballot from + // being shown. + static bool SearchEngineSelectorDisallowed(); + private: friend class FirstRunTest; FRIEND_TEST_ALL_PREFIXES(Toolbar5ImporterTest, BookmarkParse); diff --git a/chrome/browser/ui/cocoa/first_run_dialog.mm b/chrome/browser/ui/cocoa/first_run_dialog.mm index da369ad..3d4541e 100644 --- a/chrome/browser/ui/cocoa/first_run_dialog.mm +++ b/chrome/browser/ui/cocoa/first_run_dialog.mm @@ -148,7 +148,8 @@ void ShowFirstRunDialog(Profile* profile, // If the default search is not managed via policy, ask the user to // choose a default. TemplateURLModel* model = profile->GetTemplateURLModel(); - if (model && !model->is_default_search_managed()) { + if (!FirstRun::SearchEngineSelectorDisallowed() || + model && !model->is_default_search_managed()) { ShowSearchEngineSelectionDialog(profile, randomize_search_engine_experiment); } diff --git a/chrome/browser/ui/gtk/first_run_dialog.cc b/chrome/browser/ui/gtk/first_run_dialog.cc index 7bf29a9..bfd3be4 100644 --- a/chrome/browser/ui/gtk/first_run_dialog.cc +++ b/chrome/browser/ui/gtk/first_run_dialog.cc @@ -106,7 +106,9 @@ bool FirstRunDialog::Show(Profile* profile, // Figure out which dialogs we will show. // If the default search is managed via policy, we won't ask. const TemplateURLModel* search_engines_model = profile->GetTemplateURLModel(); - bool show_search_engines_dialog = search_engines_model && + bool show_search_engines_dialog = + !FirstRun::SearchEngineSelectorDisallowed() && + search_engines_model && !search_engines_model->is_default_search_managed(); #if defined(GOOGLE_CHROME_BUILD) diff --git a/chrome/browser/ui/views/first_run_search_engine_view.cc b/chrome/browser/ui/views/first_run_search_engine_view.cc index 20426a9..58f8beb 100644 --- a/chrome/browser/ui/views/first_run_search_engine_view.cc +++ b/chrome/browser/ui/views/first_run_search_engine_view.cc @@ -12,6 +12,7 @@ #include "base/rand_util.h" #include "base/time.h" #include "base/utf_string_conversions.h" +#include "chrome/browser/first_run/first_run.h" #include "chrome/browser/first_run/first_run_dialog.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/search_engines/search_engine_type.h" @@ -57,8 +58,10 @@ void ShowFirstRunDialog(Profile* profile, // If the default search is managed via policy, we don't ask the user to // choose. TemplateURLModel* model = profile->GetTemplateURLModel(); - if (NULL == model || model->is_default_search_managed()) + if (FirstRun::SearchEngineSelectorDisallowed() || !model || + model->is_default_search_managed()) { return; + } views::Window* window = views::Window::CreateChromeWindow( NULL, -- cgit v1.1