Chromium Code Reviews| Index: chrome/browser/autofill/personal_data_manager.cc |
| diff --git a/chrome/browser/autofill/personal_data_manager.cc b/chrome/browser/autofill/personal_data_manager.cc |
| index f291cf9f3a31ae70980284da0875bf289bc44fa5..7ab1285b12b8687d93255789426392c5223da976 100644 |
| --- a/chrome/browser/autofill/personal_data_manager.cc |
| +++ b/chrome/browser/autofill/personal_data_manager.cc |
| @@ -23,6 +23,7 @@ |
| #include "chrome/browser/profiles/profile.h" |
| #include "chrome/browser/sync/profile_sync_service.h" |
| #include "chrome/browser/sync/profile_sync_service_factory.h" |
| +#include "chrome/browser/webdata/autofill_entry.h" |
| #include "chrome/browser/webdata/web_data_service.h" |
| #include "chrome/common/chrome_notification_types.h" |
| #include "chrome/common/pref_names.h" |
| @@ -161,6 +162,19 @@ void PersonalDataManager::OnWebDataServiceRequestDone( |
| AutofillProfile::AdjustInferredLabels(&profile_pointers); |
| FOR_EACH_OBSERVER(PersonalDataManagerObserver, observers_, |
| OnPersonalDataChanged()); |
| + |
| + // As all Autofill data is ready, the Autocomplete data is ready as well. |
| + // If sync is not set, cull older entries of the autocomplete. Otherwise, |
| + // the entries will be culled when sync is connected. |
|
Nicolas Zea
2012/03/21 22:33:03
I don't think this logic is necessary (see my comm
GeorgeY
2012/03/23 21:53:21
No. This is the primary place where we do it: ther
|
| + ProfileSyncService* sync_service = |
| + ProfileSyncServiceFactory::GetInstance()->GetForProfile(profile_); |
| + if (sync_service && (!sync_service->HasSyncSetupCompleted() || |
| + !profile_->GetPrefs()->GetBoolean(prefs::kSyncAutofill))) { |
| + WebDataService* wds = |
| + profile_->GetWebDataService(Profile::EXPLICIT_ACCESS); |
| + if (wds) |
| + wds->RemoveExpiredFormElements(); |
| + } |
| } |
| } |