Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1011)

Unified Diff: chrome/browser/content_settings/content_settings_pref_provider.cc

Issue 11345008: Remove content::NotificationObserver dependency from most Prefs code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix PrefNotifierImpl Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/content_settings/content_settings_pref_provider.cc
diff --git a/chrome/browser/content_settings/content_settings_pref_provider.cc b/chrome/browser/content_settings/content_settings_pref_provider.cc
index 6dfb9ad87a86f2238ae7c4f50ccc56684d7ffdc2..1bf02a1c165b183398ff601290ba9128404ae5d3 100644
--- a/chrome/browser/content_settings/content_settings_pref_provider.cc
+++ b/chrome/browser/content_settings/content_settings_pref_provider.cc
@@ -217,31 +217,24 @@ void PrefProvider::ClearAllContentSettingsRules(
std::string());
}
-void PrefProvider::Observe(
- int type,
- const content::NotificationSource& source,
- const content::NotificationDetails& details) {
+void PrefProvider::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());
- if (updating_preferences_)
- return;
-
- std::string* name = content::Details<std::string>(details).ptr();
- if (*name != prefs::kContentSettingsPatternPairs) {
- NOTREACHED() << "Unexpected preference observed";
- return;
- }
- ReadContentSettingsFromPref(true);
+ DCHECK_EQ(prefs_, service);
+ if (updating_preferences_)
+ return;
- NotifyObservers(ContentSettingsPattern(),
- ContentSettingsPattern(),
- CONTENT_SETTINGS_TYPE_DEFAULT,
- std::string());
- } else {
- NOTREACHED() << "Unexpected notification";
+ if (name != prefs::kContentSettingsPatternPairs) {
+ NOTREACHED() << "Unexpected preference observed";
+ return;
}
+ ReadContentSettingsFromPref(true);
+
+ NotifyObservers(ContentSettingsPattern(),
+ ContentSettingsPattern(),
+ CONTENT_SETTINGS_TYPE_DEFAULT,
+ std::string());
}
PrefProvider::~PrefProvider() {

Powered by Google App Engine
This is Rietveld 408576698