Index: chrome/browser/prefs/pref_service_syncable.cc |
diff --git a/chrome/browser/prefs/pref_service_syncable.cc b/chrome/browser/prefs/pref_service_syncable.cc |
index 9e13ff1dc5f4e130d64ea3b1ae2400e071d8a398..76c4a2ce8b095d82dde98cf5238e0a24085fc0d0 100644 |
--- a/chrome/browser/prefs/pref_service_syncable.cc |
+++ b/chrome/browser/prefs/pref_service_syncable.cc |
@@ -67,14 +67,14 @@ PrefServiceSyncable::PrefServiceSyncable( |
PrefNotifierImpl* pref_notifier, |
PrefValueStore* pref_value_store, |
PersistentPrefStore* user_prefs, |
- DefaultPrefStore* default_store, |
+ scoped_ptr<PrefRegistry> pref_registry, |
base::Callback<void(PersistentPrefStore::PrefReadError)> |
read_error_callback, |
bool async) |
: PrefService(pref_notifier, |
pref_value_store, |
user_prefs, |
- default_store, |
+ pref_registry.Pass(), |
read_error_callback, |
async) { |
pref_sync_associator_.SetPrefService(this); |
@@ -92,6 +92,9 @@ PrefServiceSyncable* PrefServiceSyncable::CreateIncognitoPrefService( |
PrefNotifierImpl* pref_notifier = new PrefNotifierImpl(); |
OverlayUserPrefStore* incognito_pref_store = |
new OverlayUserPrefStore(user_pref_store_.get()); |
+ // TODO(joi): Temporary until we have a PrefRegistrySyncable. |
+ PrefRegistry* dummy_registry = new PrefRegistry; |
+ dummy_registry->default_prefs_ = default_store_; |
Mattias Nissler (ping if slow)
2013/01/25 14:57:11
shouldn't the two stores share the same registry?
Jói
2013/01/29 16:10:02
Done.
|
PrefsTabHelper::InitIncognitoUserPrefStore(incognito_pref_store); |
PrefServiceSyncable* incognito_service = new PrefServiceSyncable( |
pref_notifier, |
@@ -104,7 +107,7 @@ PrefServiceSyncable* PrefServiceSyncable::CreateIncognitoPrefService( |
default_store_.get(), |
pref_notifier), |
incognito_pref_store, |
- default_store_.get(), |
+ make_scoped_ptr(dummy_registry), |
read_error_callback_, |
false); |
return incognito_service; |
@@ -264,6 +267,10 @@ void PrefServiceSyncable::UpdateCommandLinePrefStore( |
PrefService::UpdateCommandLinePrefStore(cmd_line_store); |
} |
+bool PrefServiceSyncable::AllowPrefRegistrarSimple() const { |
+ return false; |
+} |
+ |
void PrefServiceSyncable::OnIsSyncingChanged() { |
FOR_EACH_OBSERVER(PrefServiceSyncableObserver, observer_list_, |
OnIsSyncingChanged()); |
@@ -271,7 +278,7 @@ void PrefServiceSyncable::OnIsSyncingChanged() { |
void PrefServiceSyncable::RegisterSyncablePreference( |
const char* path, Value* default_value, PrefSyncStatus sync_status) { |
- PrefService::RegisterPreference(path, default_value); |
+ PrefService::RegisterPreference(path, default_value, false); |
// Register with sync if necessary. |
if (sync_status == SYNCABLE_PREF) |
pref_sync_associator_.RegisterPref(path); |