diff options
author | kuchhal@chromium.org <kuchhal@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-10-19 18:35:18 +0000 |
---|---|---|
committer | kuchhal@chromium.org <kuchhal@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-10-19 18:35:18 +0000 |
commit | c6d5cdb28856a33676e3bf40e213bddf204df9df (patch) | |
tree | 0430bfcae805c2a4a46efdfbbd3d2c343353e935 /chrome/browser/views | |
parent | 77dc77607d70acba487da70dfaa3f52a6e41a7ab (diff) | |
download | chromium_src-c6d5cdb28856a33676e3bf40e213bddf204df9df.zip chromium_src-c6d5cdb28856a33676e3bf40e213bddf204df9df.tar.gz chromium_src-c6d5cdb28856a33676e3bf40e213bddf204df9df.tar.bz2 |
Make importer obey import_search_engine preference even if FRUI is enabled.
With this change importer will give preference to the value specified in master
preference for import_search_engine instead of ignoring it like before.
BUG=23649
TEST=Specified in above bug.
Review URL: http://codereview.chromium.org/274081
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29426 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/views')
-rw-r--r-- | chrome/browser/views/first_run_customize_view.cc | 9 | ||||
-rw-r--r-- | chrome/browser/views/first_run_customize_view.h | 4 | ||||
-rw-r--r-- | chrome/browser/views/first_run_view.cc | 12 | ||||
-rw-r--r-- | chrome/browser/views/first_run_view.h | 3 | ||||
-rw-r--r-- | chrome/browser/views/first_run_view_base.cc | 19 | ||||
-rw-r--r-- | chrome/browser/views/first_run_view_base.h | 13 |
6 files changed, 43 insertions, 17 deletions
diff --git a/chrome/browser/views/first_run_customize_view.cc b/chrome/browser/views/first_run_customize_view.cc index 8ed49b3..eaae13a 100644 --- a/chrome/browser/views/first_run_customize_view.cc +++ b/chrome/browser/views/first_run_customize_view.cc @@ -25,8 +25,11 @@ FirstRunCustomizeView::FirstRunCustomizeView(Profile* profile, ImporterHost* importer_host, CustomizeViewObserver* observer, bool default_browser_checked, - bool homepage_defined) - : FirstRunViewBase(profile, homepage_defined), + bool homepage_defined, + int import_items, + int dont_import_items) + : FirstRunViewBase(profile, homepage_defined, import_items, + dont_import_items), main_label_(NULL), import_cbox_(NULL), import_from_combo_(NULL), @@ -204,7 +207,7 @@ bool FirstRunCustomizeView::Accept() { int browser_selected = import_from_combo_->selected_item(); FirstRun::ImportSettings(profile_, importer_host_->GetSourceProfileInfoAt(browser_selected).browser_type, - GetDefaultImportItems(), window()->GetNativeWindow()); + GetImportItems(), window()->GetNativeWindow()); } if (default_browser_->checked()) SetDefaultBrowser(); diff --git a/chrome/browser/views/first_run_customize_view.h b/chrome/browser/views/first_run_customize_view.h index cdc5e8e..dd1842e 100644 --- a/chrome/browser/views/first_run_customize_view.h +++ b/chrome/browser/views/first_run_customize_view.h @@ -41,7 +41,9 @@ class FirstRunCustomizeView : public FirstRunViewBase, ImporterHost* importer_host, CustomizeViewObserver* observer, bool default_browser_checked, - bool homepage_defined); + bool homepage_defined, + int import_items, + int dont_import_items); virtual ~FirstRunCustomizeView(); // Overridden from views::View. diff --git a/chrome/browser/views/first_run_view.cc b/chrome/browser/views/first_run_view.cc index d29c567..0db3d75 100644 --- a/chrome/browser/views/first_run_view.cc +++ b/chrome/browser/views/first_run_view.cc @@ -33,8 +33,10 @@ std::wstring AddBullet(const std::wstring& text) { } // namespace -FirstRunView::FirstRunView(Profile* profile, bool homepage_defined) - : FirstRunViewBase(profile, homepage_defined), +FirstRunView::FirstRunView(Profile* profile, bool homepage_defined, + int import_items, int dont_import_items) + : FirstRunViewBase(profile, homepage_defined, import_items, + dont_import_items), welcome_label_(NULL), actions_label_(NULL), actions_import_(NULL), @@ -155,7 +157,9 @@ void FirstRunView::OpenCustomizeDialog() { importer_host_, this, default_browser_->checked(), - homepage_defined_))->Show(); + homepage_defined_, + import_items_, + dont_import_items_))->Show(); } void FirstRunView::LinkActivated(views::Link* source, int event_flags) { @@ -183,7 +187,7 @@ bool FirstRunView::Accept() { // Index 0 is the default browser. FirstRun::ImportSettings(profile_, importer_host_->GetSourceProfileInfoAt(0).browser_type, - GetDefaultImportItems(), window()->GetNativeWindow()); + GetImportItems(), window()->GetNativeWindow()); UserMetrics::RecordAction(L"FirstRunDef_Accept", profile_); if (default_browser_->checked()) SetDefaultBrowser(); diff --git a/chrome/browser/views/first_run_view.h b/chrome/browser/views/first_run_view.h index 0f03203..e5f1d7c 100644 --- a/chrome/browser/views/first_run_view.h +++ b/chrome/browser/views/first_run_view.h @@ -25,7 +25,8 @@ class FirstRunView : public FirstRunViewBase, public views::LinkController, public FirstRunCustomizeView::CustomizeViewObserver { public: - explicit FirstRunView(Profile* profile, bool homepage_defined); + explicit FirstRunView(Profile* profile, bool homepage_defined, + int import_items, int dont_import_items); virtual ~FirstRunView(); bool accepted() const { return accepted_;} diff --git a/chrome/browser/views/first_run_view_base.cc b/chrome/browser/views/first_run_view_base.cc index 4d420e0..1fa85d4 100644 --- a/chrome/browser/views/first_run_view_base.cc +++ b/chrome/browser/views/first_run_view_base.cc @@ -30,7 +30,8 @@ #include "views/window/client_view.h" #include "views/window/window.h" -FirstRunViewBase::FirstRunViewBase(Profile* profile, bool homepage_defined) +FirstRunViewBase::FirstRunViewBase(Profile* profile, bool homepage_defined, + int import_items, int dont_import_items) : preferred_width_(0), background_image_(NULL), separator_1_(NULL), @@ -38,7 +39,9 @@ FirstRunViewBase::FirstRunViewBase(Profile* profile, bool homepage_defined) separator_2_(NULL), importer_host_(NULL), profile_(profile), - homepage_defined_(homepage_defined) { + homepage_defined_(homepage_defined), + import_items_(import_items), + dont_import_items_(dont_import_items) { DCHECK(profile); SetupControls(); } @@ -160,11 +163,19 @@ std::wstring FirstRunViewBase::GetDialogButtonLabel( return std::wstring(); } -int FirstRunViewBase::GetDefaultImportItems() const { +int FirstRunViewBase::GetImportItems() const { // It is best to avoid importing cookies because there is a bug that make // the process take way too much time among other issues. So for the time // being we say: TODO(CPU): Bug 1196875 - int items = HISTORY | FAVORITES | PASSWORDS | SEARCH_ENGINES; + int items = import_items_; + if (!(dont_import_items_ & HISTORY)) + items = items | HISTORY; + if (!(dont_import_items_ & FAVORITES)) + items = items | FAVORITES; + if (!(dont_import_items_ & PASSWORDS)) + items = items | PASSWORDS; + if (!(dont_import_items_ & SEARCH_ENGINES)) + items = items | SEARCH_ENGINES; if (!homepage_defined_) items = items | HOME_PAGE; return items; diff --git a/chrome/browser/views/first_run_view_base.h b/chrome/browser/views/first_run_view_base.h index 77db891..5879cccb 100644 --- a/chrome/browser/views/first_run_view_base.h +++ b/chrome/browser/views/first_run_view_base.h @@ -26,7 +26,8 @@ class ImporterHost; class FirstRunViewBase : public views::View, public views::DialogDelegate { public: - explicit FirstRunViewBase(Profile* profile, bool homepage_defined); + explicit FirstRunViewBase(Profile* profile, bool homepage_defined, + int import_items, int dont_import_items); virtual ~FirstRunViewBase(); // Overridden from views::View. @@ -42,9 +43,11 @@ class FirstRunViewBase : public views::View, std::wstring GetDialogButtonLabel(MessageBoxFlags::DialogButton button) const; protected: - // Returns the items that the first run process is required to import - // from other browsers. - int GetDefaultImportItems() const; + // Returns the items that the first run process should import + // from other browsers. If there are any items that should or should not + // be imported (read and passed through from master preferences), it will + // take those into account. + int GetImportItems() const; // Creates the desktop and quick launch shortcut. Existing shortcut is lost. bool CreateDesktopShortcut(); @@ -81,6 +84,8 @@ class FirstRunViewBase : public views::View, protected: bool homepage_defined_; + int import_items_; + int dont_import_items_; private: // Initializes the controls on the dialog. |