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

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

Issue 5159001: Rest of the autofill work. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Couple of lint errors sneaked into my previous patch. This is clean of lint errors. Created 10 years 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/profile_sync_service.cc
diff --git a/chrome/browser/sync/profile_sync_service.cc b/chrome/browser/sync/profile_sync_service.cc
index 2567dda38a26194be0a8d2014d797d6cfd9ac1d2..6743ed76e996160e75d9c3c8d104ffa83ecca9d0 100644
--- a/chrome/browser/sync/profile_sync_service.cc
+++ b/chrome/browser/sync/profile_sync_service.cc
@@ -25,6 +25,7 @@
#include "chrome/browser/prefs/pref_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/net/gaia/token_service.h"
+#include "chrome/browser/sync/glue/autofill_profile_data_type_controller.h"
#include "chrome/browser/sync/glue/change_processor.h"
#include "chrome/browser/sync/glue/data_type_controller.h"
#include "chrome/browser/sync/glue/data_type_manager.h"
@@ -369,6 +370,9 @@ void ProfileSyncService::RegisterPreferences() {
enable_by_default);
pref_service->RegisterBooleanPref(prefs::kSyncManaged, false);
pref_service->RegisterStringPref(prefs::kEncryptionBootstrapToken, "");
+
+ pref_service->RegisterBooleanPref(prefs::kSyncAutofill_profile,
+ enable_by_default);
}
void ProfileSyncService::ClearPreferences() {
@@ -457,6 +461,7 @@ void ProfileSyncService::StartUp() {
void ProfileSyncService::Shutdown(bool sync_disabled) {
// Stop all data type controllers, if needed.
+
tim (not reviewing) 2010/12/13 19:24:33 remove newline
lipalani 2010/12/14 21:05:57 Done.
if (data_type_manager_.get()) {
if (data_type_manager_->state() != DataTypeManager::STOPPED) {
data_type_manager_->Stop();
@@ -551,6 +556,9 @@ const char* ProfileSyncService::GetPrefNameForDataType(
return prefs::kSyncPreferences;
case syncable::AUTOFILL:
return prefs::kSyncAutofill;
+ case syncable::AUTOFILL_PROFILE:
+ return prefs::kSyncAutofill_profile;
+ break;
case syncable::THEMES:
return prefs::kSyncThemes;
case syncable::TYPED_URLS:
@@ -880,6 +888,10 @@ void ProfileSyncService::ChangePreferredDataTypes(
continue;
profile_->GetPrefs()->SetBoolean(pref_name,
preferred_types.count(model_type) != 0);
+ if (syncable::AUTOFILL == model_type) {
+ profile_->GetPrefs()->SetBoolean(prefs::kSyncAutofill_profile,
+ preferred_types.count(model_type) != 0);
+ }
}
// If we haven't initialized yet, don't configure the DTM as it could cause
@@ -891,23 +903,30 @@ void ProfileSyncService::ChangePreferredDataTypes(
void ProfileSyncService::GetPreferredDataTypes(
syncable::ModelTypeSet* preferred_types) const {
preferred_types->clear();
-
- // Filter out any datatypes which aren't registered, or for which
- // the preference can't be read.
- syncable::ModelTypeSet registered_types;
- GetRegisteredDataTypes(&registered_types);
if (profile_->GetPrefs()->GetBoolean(prefs::kKeepEverythingSynced)) {
- *preferred_types = registered_types;
+ GetRegisteredDataTypes(preferred_types);
} else {
+ // Filter out any datatypes which aren't registered, or for which
+ // the preference can't be read.
+ syncable::ModelTypeSet registered_types;
+ GetRegisteredDataTypes(&registered_types);
for (int i = 0; i < syncable::MODEL_TYPE_COUNT; ++i) {
syncable::ModelType model_type = syncable::ModelTypeFromInt(i);
if (!registered_types.count(model_type))
continue;
+ if (model_type == syncable::AUTOFILL_PROFILE)
+ continue;
const char* pref_name = GetPrefNameForDataType(model_type);
if (!pref_name)
continue;
- if (profile_->GetPrefs()->GetBoolean(pref_name))
+ if (profile_->GetPrefs()->GetBoolean(pref_name)) {
preferred_types->insert(model_type);
+ if (model_type == syncable::AUTOFILL) {
+ if (!registered_types.count(syncable::AUTOFILL_PROFILE))
tim (not reviewing) 2010/12/13 19:24:33 can you add a comment explaining you're trying to
lipalani 2010/12/15 09:08:33 Done.
+ continue;
+ preferred_types->insert(syncable::AUTOFILL_PROFILE);
+ }
+ }
}
}
}

Powered by Google App Engine
This is Rietveld 408576698