diff options
author | jcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-10-31 17:14:02 +0000 |
---|---|---|
committer | jcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-10-31 17:14:02 +0000 |
commit | 55209a4b0b801a3bc2f790d4a75d10ccfdf34f6e (patch) | |
tree | 9d78a47b203af9ebd322efcb6fc2e9f026b7e47e /chrome/browser/views/options/content_page_view.cc | |
parent | 6e9cebe49f63b4a783acb2446a5eb2e7618c6cbd (diff) | |
download | chromium_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.cc | 47 |
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() { |