summaryrefslogtreecommitdiffstats
path: root/chrome/browser/views
diff options
context:
space:
mode:
authorkuchhal@chromium.org <kuchhal@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-19 18:35:18 +0000
committerkuchhal@chromium.org <kuchhal@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-19 18:35:18 +0000
commitc6d5cdb28856a33676e3bf40e213bddf204df9df (patch)
tree0430bfcae805c2a4a46efdfbbd3d2c343353e935 /chrome/browser/views
parent77dc77607d70acba487da70dfaa3f52a6e41a7ab (diff)
downloadchromium_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.cc9
-rw-r--r--chrome/browser/views/first_run_customize_view.h4
-rw-r--r--chrome/browser/views/first_run_view.cc12
-rw-r--r--chrome/browser/views/first_run_view.h3
-rw-r--r--chrome/browser/views/first_run_view_base.cc19
-rw-r--r--chrome/browser/views/first_run_view_base.h13
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.