summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gtk
diff options
context:
space:
mode:
authormarkusheintz@chromium.org <markusheintz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-18 14:25:35 +0000
committermarkusheintz@chromium.org <markusheintz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-18 14:25:35 +0000
commit744b8ce09a82c7526fde335cb7f15ff64b963878 (patch)
treef2fc9a4657be48c85c6e55ad3088ebd60173b80a /chrome/browser/gtk
parent05125cc97d3bfcbac8dedb13b5ec8816aababf1e (diff)
downloadchromium_src-744b8ce09a82c7526fde335cb7f15ff64b963878.zip
chromium_src-744b8ce09a82c7526fde335cb7f15ff64b963878.tar.gz
chromium_src-744b8ce09a82c7526fde335cb7f15ff64b963878.tar.bz2
Upate privacy options preference UI GTK widgets when the corresponding policies change at runtime.
BUG=52436 TEST=manual Review URL: http://codereview.chromium.org/3175011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56527 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk')
-rw-r--r--chrome/browser/gtk/options/advanced_contents_gtk.cc37
1 files changed, 20 insertions, 17 deletions
diff --git a/chrome/browser/gtk/options/advanced_contents_gtk.cc b/chrome/browser/gtk/options/advanced_contents_gtk.cc
index f400b75..bc9cb135 100644
--- a/chrome/browser/gtk/options/advanced_contents_gtk.cc
+++ b/chrome/browser/gtk/options/advanced_contents_gtk.cc
@@ -759,20 +759,6 @@ PrivacySection::PrivacySection(Profile* profile)
safe_browsing_.Init(prefs::kSafeBrowsingEnabled, profile->GetPrefs(), this);
enable_metrics_recording_.Init(prefs::kMetricsReportingEnabled,
g_browser_process->local_state(), this);
-
- gtk_widget_set_sensitive(enable_link_doctor_checkbox_,
- !alternate_error_pages_.IsManaged());
- gtk_widget_set_sensitive(enable_suggest_checkbox_,
- !use_suggest_.IsManaged());
- gtk_widget_set_sensitive(enable_dns_prefetching_checkbox_,
- !dns_prefetch_enabled_.IsManaged());
- gtk_widget_set_sensitive(enable_safe_browsing_checkbox_,
- !safe_browsing_.IsManaged());
-#if defined(GOOGLE_CHROME_BUILD)
- gtk_widget_set_sensitive(reporting_enabled_checkbox_,
- !enable_metrics_recording_.IsManaged());
-#endif
-
NotifyPrefChanged(NULL);
}
@@ -890,28 +876,45 @@ void PrivacySection::OnLoggingChange(GtkWidget* widget,
void PrivacySection::NotifyPrefChanged(const std::string* pref_name) {
pref_changing_ = true;
if (!pref_name || *pref_name == prefs::kAlternateErrorPagesEnabled) {
+ gtk_widget_set_sensitive(
+ GTK_WIDGET(enable_link_doctor_checkbox_),
+ !alternate_error_pages_.IsManaged());
gtk_toggle_button_set_active(
GTK_TOGGLE_BUTTON(enable_link_doctor_checkbox_),
alternate_error_pages_.GetValue());
}
if (!pref_name || *pref_name == prefs::kSearchSuggestEnabled) {
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(enable_suggest_checkbox_),
- use_suggest_.GetValue());
+ gtk_widget_set_sensitive(
+ GTK_WIDGET(enable_suggest_checkbox_),
+ !use_suggest_.IsManaged());
+ gtk_toggle_button_set_active(
+ GTK_TOGGLE_BUTTON(enable_suggest_checkbox_),
+ use_suggest_.GetValue());
}
if (!pref_name || *pref_name == prefs::kDnsPrefetchingEnabled) {
+ gtk_widget_set_sensitive(
+ GTK_WIDGET(enable_dns_prefetching_checkbox_),
+ !dns_prefetch_enabled_.IsManaged());
bool enabled = dns_prefetch_enabled_.GetValue();
gtk_toggle_button_set_active(
GTK_TOGGLE_BUTTON(enable_dns_prefetching_checkbox_), enabled);
chrome_browser_net::EnablePredictor(enabled);
}
if (!pref_name || *pref_name == prefs::kSafeBrowsingEnabled) {
+ gtk_widget_set_sensitive(
+ GTK_WIDGET(enable_safe_browsing_checkbox_),
+ !safe_browsing_.IsManaged());
gtk_toggle_button_set_active(
GTK_TOGGLE_BUTTON(enable_safe_browsing_checkbox_),
safe_browsing_.GetValue());
}
#if defined(GOOGLE_CHROME_BUILD)
if (!pref_name || *pref_name == prefs::kMetricsReportingEnabled) {
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(reporting_enabled_checkbox_),
+ gtk_widget_set_sensitive(
+ GTK_WIDGET(reporting_enabled_checkbox_),
+ !enable_metrics_recording_.IsManaged());
+ gtk_toggle_button_set_active(
+ GTK_TOGGLE_BUTTON(reporting_enabled_checkbox_),
enable_metrics_recording_.GetValue());
ResolveMetricsReportingEnabled();
}