OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/gtk/options/content_page_gtk.h" | 5 #include "chrome/browser/gtk/options/content_page_gtk.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "app/gtk_util.h" | 9 #include "app/gtk_util.h" |
10 #include "app/l10n_util.h" | 10 #include "app/l10n_util.h" |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 if (sync_service_) { | 94 if (sync_service_) { |
95 options_builder->AddOptionGroup( | 95 options_builder->AddOptionGroup( |
96 l10n_util::GetStringUTF8(IDS_SYNC_OPTIONS_GROUP_NAME), | 96 l10n_util::GetStringUTF8(IDS_SYNC_OPTIONS_GROUP_NAME), |
97 InitSyncGroup(), false); | 97 InitSyncGroup(), false); |
98 UpdateSyncControls(); | 98 UpdateSyncControls(); |
99 } | 99 } |
100 | 100 |
101 // Add preferences observers. | 101 // Add preferences observers. |
102 ask_to_save_passwords_.Init(prefs::kPasswordManagerEnabled, | 102 ask_to_save_passwords_.Init(prefs::kPasswordManagerEnabled, |
103 profile->GetPrefs(), this); | 103 profile->GetPrefs(), this); |
| 104 form_autofill_enabled_.Init(prefs::kAutoFillEnabled, |
| 105 profile->GetPrefs(), this); |
104 if (browser_defaults::kCanToggleSystemTitleBar) { | 106 if (browser_defaults::kCanToggleSystemTitleBar) { |
105 use_custom_chrome_frame_.Init(prefs::kUseCustomChromeFrame, | 107 use_custom_chrome_frame_.Init(prefs::kUseCustomChromeFrame, |
106 profile->GetPrefs(), this); | 108 profile->GetPrefs(), this); |
107 } | 109 } |
108 | 110 |
109 options_builder->AddOptionGroup( | 111 options_builder->AddOptionGroup( |
110 l10n_util::GetStringUTF8(IDS_OPTIONS_PASSWORDS_GROUP_NAME), | 112 l10n_util::GetStringUTF8(IDS_OPTIONS_PASSWORDS_GROUP_NAME), |
111 InitPasswordSavingGroup(), false); | 113 InitPasswordSavingGroup(), false); |
112 options_builder->AddOptionGroup( | 114 options_builder->AddOptionGroup( |
113 l10n_util::GetStringUTF8(IDS_AUTOFILL_SETTING_WINDOWS_GROUP_NAME), | 115 l10n_util::GetStringUTF8(IDS_AUTOFILL_SETTING_WINDOWS_GROUP_NAME), |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
154 initializing_ = true; | 156 initializing_ = true; |
155 if (!pref_name || *pref_name == prefs::kPasswordManagerEnabled) { | 157 if (!pref_name || *pref_name == prefs::kPasswordManagerEnabled) { |
156 if (ask_to_save_passwords_.GetValue()) { | 158 if (ask_to_save_passwords_.GetValue()) { |
157 gtk_toggle_button_set_active( | 159 gtk_toggle_button_set_active( |
158 GTK_TOGGLE_BUTTON(passwords_asktosave_radio_), TRUE); | 160 GTK_TOGGLE_BUTTON(passwords_asktosave_radio_), TRUE); |
159 } else { | 161 } else { |
160 gtk_toggle_button_set_active( | 162 gtk_toggle_button_set_active( |
161 GTK_TOGGLE_BUTTON(passwords_neversave_radio_), TRUE); | 163 GTK_TOGGLE_BUTTON(passwords_neversave_radio_), TRUE); |
162 } | 164 } |
163 } | 165 } |
| 166 if (!pref_name || *pref_name == prefs::kAutoFillEnabled) { |
| 167 bool disabled_by_policy = form_autofill_enabled_.IsManaged() && |
| 168 !form_autofill_enabled_.GetValue(); |
| 169 gtk_widget_set_sensitive(autofill_button_, !disabled_by_policy); |
| 170 } |
164 if (browser_defaults::kCanToggleSystemTitleBar && | 171 if (browser_defaults::kCanToggleSystemTitleBar && |
165 (!pref_name || *pref_name == prefs::kUseCustomChromeFrame)) { | 172 (!pref_name || *pref_name == prefs::kUseCustomChromeFrame)) { |
166 if (use_custom_chrome_frame_.GetValue()) { | 173 if (use_custom_chrome_frame_.GetValue()) { |
167 gtk_toggle_button_set_active( | 174 gtk_toggle_button_set_active( |
168 GTK_TOGGLE_BUTTON(system_title_bar_hide_radio_), TRUE); | 175 GTK_TOGGLE_BUTTON(system_title_bar_hide_radio_), TRUE); |
169 } else { | 176 } else { |
170 gtk_toggle_button_set_active( | 177 gtk_toggle_button_set_active( |
171 GTK_TOGGLE_BUTTON(system_title_bar_show_radio_), TRUE); | 178 GTK_TOGGLE_BUTTON(system_title_bar_show_radio_), TRUE); |
172 } | 179 } |
173 } | 180 } |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
240 return vbox; | 247 return vbox; |
241 } | 248 } |
242 | 249 |
243 GtkWidget* ContentPageGtk::InitFormAutoFillGroup() { | 250 GtkWidget* ContentPageGtk::InitFormAutoFillGroup() { |
244 GtkWidget* vbox = gtk_vbox_new(FALSE, gtk_util::kControlSpacing); | 251 GtkWidget* vbox = gtk_vbox_new(FALSE, gtk_util::kControlSpacing); |
245 | 252 |
246 GtkWidget* button_hbox = gtk_hbox_new(FALSE, gtk_util::kControlSpacing); | 253 GtkWidget* button_hbox = gtk_hbox_new(FALSE, gtk_util::kControlSpacing); |
247 gtk_container_add(GTK_CONTAINER(vbox), button_hbox); | 254 gtk_container_add(GTK_CONTAINER(vbox), button_hbox); |
248 | 255 |
249 // AutoFill button. | 256 // AutoFill button. |
250 GtkWidget* autofill_button = gtk_button_new_with_label( | 257 autofill_button_ = gtk_button_new_with_label( |
251 l10n_util::GetStringUTF8(IDS_AUTOFILL_OPTIONS).c_str()); | 258 l10n_util::GetStringUTF8(IDS_AUTOFILL_OPTIONS).c_str()); |
252 | 259 |
253 g_signal_connect(G_OBJECT(autofill_button), "clicked", | 260 g_signal_connect(G_OBJECT(autofill_button_), "clicked", |
254 G_CALLBACK(OnAutoFillButtonClickedThunk), this); | 261 G_CALLBACK(OnAutoFillButtonClickedThunk), this); |
255 gtk_box_pack_start(GTK_BOX(button_hbox), autofill_button, FALSE, FALSE, 0); | 262 gtk_box_pack_start(GTK_BOX(button_hbox), autofill_button_, FALSE, FALSE, 0); |
256 | 263 |
257 return vbox; | 264 return vbox; |
258 } | 265 } |
259 | 266 |
260 GtkWidget* ContentPageGtk::InitBrowsingDataGroup() { | 267 GtkWidget* ContentPageGtk::InitBrowsingDataGroup() { |
261 GtkWidget* button_box = gtk_hbox_new(FALSE, gtk_util::kControlSpacing); | 268 GtkWidget* button_box = gtk_hbox_new(FALSE, gtk_util::kControlSpacing); |
262 | 269 |
263 // Import button. | 270 // Import button. |
264 GtkWidget* import_button = gtk_button_new_with_label( | 271 GtkWidget* import_button = gtk_button_new_with_label( |
265 l10n_util::GetStringUTF8(IDS_OPTIONS_IMPORT_DATA_BUTTON).c_str()); | 272 l10n_util::GetStringUTF8(IDS_OPTIONS_IMPORT_DATA_BUTTON).c_str()); |
(...skipping 343 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
609 if (response == GTK_RESPONSE_ACCEPT) { | 616 if (response == GTK_RESPONSE_ACCEPT) { |
610 sync_service_->DisableForUser(); | 617 sync_service_->DisableForUser(); |
611 ProfileSyncService::SyncEvent(ProfileSyncService::STOP_FROM_OPTIONS); | 618 ProfileSyncService::SyncEvent(ProfileSyncService::STOP_FROM_OPTIONS); |
612 } | 619 } |
613 gtk_widget_destroy(widget); | 620 gtk_widget_destroy(widget); |
614 } | 621 } |
615 | 622 |
616 void ContentPageGtk::OnPrivacyDashboardLinkClicked(GtkWidget* widget) { | 623 void ContentPageGtk::OnPrivacyDashboardLinkClicked(GtkWidget* widget) { |
617 BrowserList::GetLastActive()->OpenPrivacyDashboardTabAndActivate(); | 624 BrowserList::GetLastActive()->OpenPrivacyDashboardTabAndActivate(); |
618 } | 625 } |
OLD | NEW |