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

Unified Diff: chrome/browser/sync/sync_prefs.cc

Issue 12079097: Introduce PrefRegistrySyncable, simplifying PrefServiceSyncable. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add to PrefRegistrySyncable and PrefServiceSyncable to let sync know of pre-registered prefs. Created 7 years, 10 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/sync/sync_prefs.cc
diff --git a/chrome/browser/sync/sync_prefs.cc b/chrome/browser/sync/sync_prefs.cc
index 9aa75fc97a6fd87817252892a4c08280b5596d7e..fd5d000b871517ccc00c1408beab04d5ae58ba83 100644
--- a/chrome/browser/sync/sync_prefs.cc
+++ b/chrome/browser/sync/sync_prefs.cc
@@ -9,6 +9,7 @@
#include "base/string_number_conversions.h"
#include "base/values.h"
#include "build/build_config.h"
+#include "chrome/browser/prefs/pref_registry_syncable.h"
#include "chrome/browser/prefs/pref_service.h"
#include "chrome/browser/profiles/profile_io_data.h"
#include "chrome/browser/sync/profile_sync_service.h"
@@ -22,7 +23,7 @@ namespace browser_sync {
SyncPrefObserver::~SyncPrefObserver() {}
-SyncPrefs::SyncPrefs(PrefServiceSyncable* pref_service)
+SyncPrefs::SyncPrefs(PrefService* pref_service)
: pref_service_(pref_service) {
RegisterPrefGroups();
// TODO(tim): Create a Mock instead of maintaining the if(!pref_service_) case
@@ -42,16 +43,17 @@ SyncPrefs::~SyncPrefs() {
}
// static
-void SyncPrefs::RegisterUserPrefs(PrefServiceSyncable* prefs) {
- prefs->RegisterBooleanPref(prefs::kSyncHasSetupCompleted,
- false,
- PrefServiceSyncable::UNSYNCABLE_PREF);
- prefs->RegisterBooleanPref(prefs::kSyncSuppressStart,
- false,
- PrefServiceSyncable::UNSYNCABLE_PREF);
- prefs->RegisterInt64Pref(prefs::kSyncLastSyncedTime,
- 0,
- PrefServiceSyncable::UNSYNCABLE_PREF);
+void SyncPrefs::RegisterUserPrefs(PrefService* prefs,
+ PrefRegistrySyncable* registry) {
+ registry->RegisterBooleanPref(prefs::kSyncHasSetupCompleted,
+ false,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
+ registry->RegisterBooleanPref(prefs::kSyncSuppressStart,
+ false,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
+ registry->RegisterInt64Pref(prefs::kSyncLastSyncedTime,
+ 0,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
// If you've never synced before, or if you're using Chrome OS or Android,
// all datatypes are on by default.
@@ -63,34 +65,34 @@ void SyncPrefs::RegisterUserPrefs(PrefServiceSyncable* prefs) {
bool enable_by_default = !prefs->HasPrefPath(prefs::kSyncHasSetupCompleted);
Mattias Nissler (ping if slow) 2013/02/06 17:53:33 TODO: Remove |prefs| parameter.
Jói 2013/02/07 14:52:32 Done.
#endif
- prefs->RegisterBooleanPref(prefs::kSyncKeepEverythingSynced,
- enable_by_default,
- PrefServiceSyncable::UNSYNCABLE_PREF);
+ registry->RegisterBooleanPref(prefs::kSyncKeepEverythingSynced,
+ enable_by_default,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
syncer::ModelTypeSet user_types = syncer::UserTypes();
// Treat bookmarks specially.
- RegisterDataTypePreferredPref(prefs, syncer::BOOKMARKS, true);
+ RegisterDataTypePreferredPref(registry, syncer::BOOKMARKS, true);
user_types.Remove(syncer::BOOKMARKS);
for (syncer::ModelTypeSet::Iterator it = user_types.First();
it.Good(); it.Inc()) {
- RegisterDataTypePreferredPref(prefs, it.Get(), enable_by_default);
+ RegisterDataTypePreferredPref(registry, it.Get(), enable_by_default);
}
- prefs->RegisterBooleanPref(prefs::kSyncManaged,
- false,
- PrefServiceSyncable::UNSYNCABLE_PREF);
- prefs->RegisterStringPref(prefs::kSyncEncryptionBootstrapToken,
- "",
- PrefServiceSyncable::UNSYNCABLE_PREF);
- prefs->RegisterStringPref(prefs::kSyncKeystoreEncryptionBootstrapToken,
- "",
- PrefServiceSyncable::UNSYNCABLE_PREF);
+ registry->RegisterBooleanPref(prefs::kSyncManaged,
+ false,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
+ registry->RegisterStringPref(prefs::kSyncEncryptionBootstrapToken,
+ "",
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
+ registry->RegisterStringPref(prefs::kSyncKeystoreEncryptionBootstrapToken,
+ "",
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
#if defined(OS_CHROMEOS)
- prefs->RegisterStringPref(prefs::kSyncSpareBootstrapToken,
- "",
- PrefServiceSyncable::UNSYNCABLE_PREF);
+ registry->RegisterStringPref(prefs::kSyncSpareBootstrapToken,
+ "",
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
#endif
// We will start prompting people about new data types after the launch of
@@ -109,9 +111,9 @@ void SyncPrefs::RegisterUserPrefs(PrefServiceSyncable* prefs) {
model_set.Put(syncer::APPS);
model_set.Put(syncer::TYPED_URLS);
model_set.Put(syncer::SESSIONS);
- prefs->RegisterListPref(prefs::kSyncAcknowledgedSyncTypes,
- syncer::ModelTypeSetToValue(model_set),
- PrefServiceSyncable::UNSYNCABLE_PREF);
+ registry->RegisterListPref(prefs::kSyncAcknowledgedSyncTypes,
+ syncer::ModelTypeSetToValue(model_set),
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
}
// static
@@ -389,7 +391,7 @@ void SyncPrefs::RegisterPrefGroups() {
}
// static
-void SyncPrefs::RegisterDataTypePreferredPref(PrefServiceSyncable* prefs,
+void SyncPrefs::RegisterDataTypePreferredPref(PrefRegistrySyncable* registry,
syncer::ModelType type,
bool is_preferred) {
const char* pref_name = GetPrefNameForDataType(type);
@@ -397,8 +399,8 @@ void SyncPrefs::RegisterDataTypePreferredPref(PrefServiceSyncable* prefs,
NOTREACHED();
return;
}
- prefs->RegisterBooleanPref(pref_name, is_preferred,
- PrefServiceSyncable::UNSYNCABLE_PREF);
+ registry->RegisterBooleanPref(pref_name, is_preferred,
+ PrefRegistrySyncable::UNSYNCABLE_PREF);
}
bool SyncPrefs::GetDataTypePreferred(syncer::ModelType type) const {

Powered by Google App Engine
This is Rietveld 408576698