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 c6cf8badf58bce2186da703230520d09dbe94503..71d781b08a3d0b74bd755782294aecad074c1fb3 100644 |
--- a/chrome/browser/prefs/pref_service_syncable.cc |
+++ b/chrome/browser/prefs/pref_service_syncable.cc |
@@ -5,6 +5,7 @@ |
#include "chrome/browser/prefs/pref_service_syncable.h" |
#include "base/bind.h" |
+#include "base/callback.h" |
#include "base/files/file_path.h" |
#include "base/prefs/default_pref_store.h" |
#include "base/prefs/overlay_user_pref_store.h" |
@@ -15,7 +16,6 @@ |
#include "base/value_conversions.h" |
#include "chrome/browser/prefs/pref_model_associator.h" |
#include "chrome/browser/prefs/pref_service_syncable_observer.h" |
-#include "chrome/browser/ui/prefs/prefs_tab_helper.h" |
#include "components/pref_registry/pref_registry_syncable.h" |
PrefServiceSyncable::PrefServiceSyncable( |
@@ -38,9 +38,8 @@ PrefServiceSyncable::PrefServiceSyncable( |
priority_pref_sync_associator_.SetPrefService(this); |
// Let PrefModelAssociators know about changes to preference values. |
- pref_value_store->set_callback( |
- base::Bind(&PrefServiceSyncable::ProcessPrefChange, |
- base::Unretained(this))); |
+ pref_value_store->set_callback(base::Bind( |
+ &PrefServiceSyncable::ProcessPrefChange, base::Unretained(this))); |
// Add already-registered syncable preferences to PrefModelAssociator. |
for (PrefRegistry::const_iterator it = pref_registry->begin(); |
@@ -65,16 +64,19 @@ PrefServiceSyncable::~PrefServiceSyncable() { |
} |
PrefServiceSyncable* PrefServiceSyncable::CreateIncognitoPrefService( |
- PrefStore* incognito_extension_prefs) { |
+ PrefStore* incognito_extension_prefs, |
+ const base::Callback<void(OverlayUserPrefStore*)>& |
+ incognito_pref_created_cb) { |
pref_service_forked_ = true; |
PrefNotifierImpl* pref_notifier = new PrefNotifierImpl(); |
OverlayUserPrefStore* incognito_pref_store = |
new OverlayUserPrefStore(user_pref_store_.get()); |
- PrefsTabHelper::InitIncognitoUserPrefStore(incognito_pref_store); |
+ if (!incognito_pref_created_cb.is_null()) |
gab
2015/09/11 12:58:32
This wasn't previously optional. Enforce it by con
sdefresne
2015/09/14 13:17:26
This is commented out in the downstream iOS fork (
|
+ incognito_pref_created_cb.Run(incognito_pref_store); |
scoped_refptr<user_prefs::PrefRegistrySyncable> forked_registry = |
- static_cast<user_prefs::PrefRegistrySyncable*>( |
- pref_registry_.get())->ForkForIncognito(); |
+ static_cast<user_prefs::PrefRegistrySyncable*>(pref_registry_.get()) |
+ ->ForkForIncognito(); |
gab
2015/09/11 12:58:32
Weird formatting... preferred old one: same number
sdefresne
2015/09/14 13:17:26
Reverted.
|
PrefServiceSyncable* incognito_service = new PrefServiceSyncable( |
pref_notifier, |
pref_value_store_->CloneAndSpecialize(NULL, // managed |
@@ -134,9 +136,8 @@ void PrefServiceSyncable::UpdateCommandLinePrefStore( |
PrefService::UpdateCommandLinePrefStore(cmd_line_store); |
} |
-void PrefServiceSyncable::AddSyncedPrefObserver( |
- const std::string& name, |
- SyncedPrefObserver* observer) { |
+void PrefServiceSyncable::AddSyncedPrefObserver(const std::string& name, |
+ SyncedPrefObserver* observer) { |
pref_sync_associator_.AddSyncedPrefObserver(name, observer); |
priority_pref_sync_associator_.AddSyncedPrefObserver(name, observer); |
} |
@@ -154,8 +155,7 @@ void PrefServiceSyncable::AddRegisteredSyncablePreference( |
DCHECK(FindPreference(path)); |
if (flags & user_prefs::PrefRegistrySyncable::SYNCABLE_PREF) { |
pref_sync_associator_.RegisterPref(path.c_str()); |
- } else if (flags & |
- user_prefs::PrefRegistrySyncable::SYNCABLE_PRIORITY_PREF) { |
+ } else if (flags & user_prefs::PrefRegistrySyncable::SYNCABLE_PRIORITY_PREF) { |
priority_pref_sync_associator_.RegisterPref(path.c_str()); |
} |
} |