| Index: chrome/browser/content_settings/content_settings_policy_provider.cc
|
| diff --git a/chrome/browser/content_settings/content_settings_policy_provider.cc b/chrome/browser/content_settings/content_settings_policy_provider.cc
|
| index 6aa1a0ec24847966fc2da4431f23a0b98b3b6dc0..f07da60c26c04b161b75ef14c9c8d0e9ba35b0b3 100644
|
| --- a/chrome/browser/content_settings/content_settings_policy_provider.cc
|
| +++ b/chrome/browser/content_settings/content_settings_policy_provider.cc
|
| @@ -422,51 +422,45 @@ void PolicyProvider::ShutdownOnUIThread() {
|
| prefs_ = NULL;
|
| }
|
|
|
| -void PolicyProvider::Observe(int type,
|
| - const content::NotificationSource& source,
|
| - const content::NotificationDetails& details) {
|
| +void PolicyProvider::OnPreferenceChanged(PrefServiceBase* service,
|
| + const std::string& name) {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
|
|
| - if (type == chrome::NOTIFICATION_PREF_CHANGED) {
|
| - DCHECK_EQ(prefs_, content::Source<PrefService>(source).ptr());
|
| - std::string* name = content::Details<std::string>(details).ptr();
|
| - if (*name == prefs::kManagedDefaultCookiesSetting) {
|
| - UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_COOKIES);
|
| - } else if (*name == prefs::kManagedDefaultImagesSetting) {
|
| - UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_IMAGES);
|
| - } else if (*name == prefs::kManagedDefaultJavaScriptSetting) {
|
| - UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_JAVASCRIPT);
|
| - } else if (*name == prefs::kManagedDefaultPluginsSetting) {
|
| - UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_PLUGINS);
|
| - } else if (*name == prefs::kManagedDefaultPopupsSetting) {
|
| - UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_POPUPS);
|
| - } else if (*name == prefs::kManagedDefaultGeolocationSetting) {
|
| - UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_GEOLOCATION);
|
| - } else if (*name == prefs::kManagedDefaultNotificationsSetting) {
|
| - UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
|
| - } else if (*name == prefs::kManagedDefaultMediaStreamSetting) {
|
| - UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_MEDIASTREAM);
|
| - } else if (*name == prefs::kManagedAutoSelectCertificateForUrls ||
|
| - *name == prefs::kManagedCookiesAllowedForUrls ||
|
| - *name == prefs::kManagedCookiesBlockedForUrls ||
|
| - *name == prefs::kManagedCookiesSessionOnlyForUrls ||
|
| - *name == prefs::kManagedImagesAllowedForUrls ||
|
| - *name == prefs::kManagedImagesBlockedForUrls ||
|
| - *name == prefs::kManagedJavaScriptAllowedForUrls ||
|
| - *name == prefs::kManagedJavaScriptBlockedForUrls ||
|
| - *name == prefs::kManagedPluginsAllowedForUrls ||
|
| - *name == prefs::kManagedPluginsBlockedForUrls ||
|
| - *name == prefs::kManagedPopupsAllowedForUrls ||
|
| - *name == prefs::kManagedPopupsBlockedForUrls ||
|
| - *name == prefs::kManagedNotificationsAllowedForUrls ||
|
| - *name == prefs::kManagedNotificationsBlockedForUrls) {
|
| - ReadManagedContentSettings(true);
|
| - ReadManagedDefaultSettings();
|
| - }
|
| - } else {
|
| - NOTREACHED() << "Unexpected notification";
|
| - return;
|
| + DCHECK_EQ(prefs_, service);
|
| + if (name == prefs::kManagedDefaultCookiesSetting) {
|
| + UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_COOKIES);
|
| + } else if (name == prefs::kManagedDefaultImagesSetting) {
|
| + UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_IMAGES);
|
| + } else if (name == prefs::kManagedDefaultJavaScriptSetting) {
|
| + UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_JAVASCRIPT);
|
| + } else if (name == prefs::kManagedDefaultPluginsSetting) {
|
| + UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_PLUGINS);
|
| + } else if (name == prefs::kManagedDefaultPopupsSetting) {
|
| + UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_POPUPS);
|
| + } else if (name == prefs::kManagedDefaultGeolocationSetting) {
|
| + UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_GEOLOCATION);
|
| + } else if (name == prefs::kManagedDefaultNotificationsSetting) {
|
| + UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
|
| + } else if (name == prefs::kManagedDefaultMediaStreamSetting) {
|
| + UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_MEDIASTREAM);
|
| + } else if (name == prefs::kManagedAutoSelectCertificateForUrls ||
|
| + name == prefs::kManagedCookiesAllowedForUrls ||
|
| + name == prefs::kManagedCookiesBlockedForUrls ||
|
| + name == prefs::kManagedCookiesSessionOnlyForUrls ||
|
| + name == prefs::kManagedImagesAllowedForUrls ||
|
| + name == prefs::kManagedImagesBlockedForUrls ||
|
| + name == prefs::kManagedJavaScriptAllowedForUrls ||
|
| + name == prefs::kManagedJavaScriptBlockedForUrls ||
|
| + name == prefs::kManagedPluginsAllowedForUrls ||
|
| + name == prefs::kManagedPluginsBlockedForUrls ||
|
| + name == prefs::kManagedPopupsAllowedForUrls ||
|
| + name == prefs::kManagedPopupsBlockedForUrls ||
|
| + name == prefs::kManagedNotificationsAllowedForUrls ||
|
| + name == prefs::kManagedNotificationsBlockedForUrls) {
|
| + ReadManagedContentSettings(true);
|
| + ReadManagedDefaultSettings();
|
| }
|
| +
|
| NotifyObservers(ContentSettingsPattern(),
|
| ContentSettingsPattern(),
|
| CONTENT_SETTINGS_TYPE_DEFAULT,
|
|
|