summaryrefslogtreecommitdiffstats
path: root/chrome/browser/views/options/content_page_view.cc
diff options
context:
space:
mode:
authorjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-10-31 17:14:02 +0000
committerjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-10-31 17:14:02 +0000
commit55209a4b0b801a3bc2f790d4a75d10ccfdf34f6e (patch)
tree9d78a47b203af9ebd322efcb6fc2e9f026b7e47e /chrome/browser/views/options/content_page_view.cc
parent6e9cebe49f63b4a783acb2446a5eb2e7618c6cbd (diff)
downloadchromium_src-55209a4b0b801a3bc2f790d4a75d10ccfdf34f6e.zip
chromium_src-55209a4b0b801a3bc2f790d4a75d10ccfdf34f6e.tar.gz
chromium_src-55209a4b0b801a3bc2f790d4a75d10ccfdf34f6e.tar.bz2
Adding preferences and clear browsing data for form autofill.
BUG=None TEST=Open the 'Clear browsing data' dialog, there should be a check box for from data. Open the options dialogue, 2nd tab, there should be an option for autofill. Review URL: http://codereview.chromium.org/8740 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4292 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/views/options/content_page_view.cc')
-rw-r--r--chrome/browser/views/options/content_page_view.cc47
1 files changed, 46 insertions, 1 deletions
diff --git a/chrome/browser/views/options/content_page_view.cc b/chrome/browser/views/options/content_page_view.cc
index 36304e7..edd83b4 100644
--- a/chrome/browser/views/options/content_page_view.cc
+++ b/chrome/browser/views/options/content_page_view.cc
@@ -221,6 +221,16 @@ void ContentPageView::ButtonPressed(views::NativeButton* sender) {
} else if (sender == passwords_show_passwords_button_) {
UserMetricsRecordAction(L"Options_ShowPasswordManager", NULL);
PasswordManagerView::Show(profile());
+ } else if (sender == form_autofill_checkbox_) {
+ bool enabled = form_autofill_checkbox_->IsSelected();
+ if (enabled) {
+ UserMetricsRecordAction(L"Options_FormAutofill_Enable",
+ profile()->GetPrefs());
+ } else {
+ UserMetricsRecordAction(L"Options_FormAutofill_Disable",
+ profile()->GetPrefs());
+ }
+ form_autofill_.SetValue(enabled);
} else if (sender == change_content_fonts_button_) {
views::Window::CreateChromeWindow(
GetRootWindow(),
@@ -263,6 +273,11 @@ void ContentPageView::InitControlLayout() {
layout->AddView(fonts_lang_group_);
layout->AddPaddingRow(0, kRelatedControlVerticalSpacing);
+ layout->StartRow(0, single_column_view_set_id);
+ InitFormAutofillGroup();
+ layout->AddView(form_autofill_group_);
+ layout->AddPaddingRow(0, kRelatedControlVerticalSpacing);
+
// Init member prefs so we can update the controls if prefs change.
default_download_location_.Init(prefs::kDownloadDefaultDirectory,
profile()->GetPrefs(), this);
@@ -270,6 +285,7 @@ void ContentPageView::InitControlLayout() {
profile()->GetPrefs(), this);
ask_to_save_passwords_.Init(prefs::kPasswordManagerEnabled,
profile()->GetPrefs(), this);
+ form_autofill_.Init(prefs::kFormAutofillEnabled, profile()->GetPrefs(), this);
}
void ContentPageView::NotifyPrefChanged(const std::wstring* pref_name) {
@@ -287,6 +303,9 @@ void ContentPageView::NotifyPrefChanged(const std::wstring* pref_name) {
passwords_neversave_radio_->SetIsSelected(true);
}
}
+ if (!pref_name || *pref_name == prefs::kFormAutofillEnabled) {
+ form_autofill_checkbox_->SetIsSelected(form_autofill_.GetValue());
+ }
}
///////////////////////////////////////////////////////////////////////////////
@@ -399,6 +418,32 @@ void ContentPageView::InitPasswordSavingGroup() {
true);
}
+void ContentPageView::InitFormAutofillGroup() {
+ form_autofill_checkbox_ = new views::CheckBox(
+ l10n_util::GetString(IDS_AUTOFILL_SAVEFORMS));
+ form_autofill_checkbox_->SetListener(this);
+ form_autofill_checkbox_->SetMultiLine(true);
+
+ using views::GridLayout;
+ using views::ColumnSet;
+
+ views::View* contents = new views::View;
+ GridLayout* layout = new GridLayout(contents);
+ contents->SetLayoutManager(layout);
+
+ const int single_column_view_set_id = 1;
+ ColumnSet* column_set = layout->AddColumnSet(single_column_view_set_id);
+ column_set->AddColumn(GridLayout::FILL, GridLayout::CENTER, 1,
+ GridLayout::USE_PREF, 0, 0);
+
+ layout->StartRow(0, single_column_view_set_id);
+ layout->AddView(form_autofill_checkbox_);
+
+ form_autofill_group_ = new OptionsGroupView(
+ contents, l10n_util::GetString(IDS_AUTOFILL_SETTING_WINDOWS_GROUP_NAME),
+ L"", false);
+}
+
void ContentPageView::InitFontsLangGroup() {
fonts_and_languages_label_ = new views::Label(
l10n_util::GetString(IDS_OPTIONS_FONTSETTINGS_INFO));
@@ -429,7 +474,7 @@ void ContentPageView::InitFontsLangGroup() {
fonts_lang_group_ = new OptionsGroupView(
contents,
l10n_util::GetString(IDS_OPTIONS_FONTSANDLANGUAGES_GROUP_NAME),
- L"", false);
+ L"", true);
}
void ContentPageView::UpdateDownloadDirectoryDisplay() {