Chromium Code Reviews| 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); |