| Index: chrome/browser/prefs/browser_prefs.cc
|
| diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
|
| index d4f262935ff56c85cad7610c7df3688e1982c4d0..b884467a62e757dddc7aac87c3de7a75ede2b7e6 100644
|
| --- a/chrome/browser/prefs/browser_prefs.cc
|
| +++ b/chrome/browser/prefs/browser_prefs.cc
|
| @@ -10,6 +10,7 @@
|
| #include "chrome/browser/background/background_mode_manager.h"
|
| #include "chrome/browser/bookmarks/bookmark_prompt_prefs.h"
|
| #include "chrome/browser/bookmarks/bookmark_utils.h"
|
| +#include "chrome/browser/browser_process_impl.h"
|
| #include "chrome/browser/browser_shutdown.h"
|
| #include "chrome/browser/chrome_content_browser_client.h"
|
| #include "chrome/browser/content_settings/host_content_settings_map.h"
|
| @@ -45,6 +46,7 @@
|
| #include "chrome/browser/pepper_flash_settings_manager.h"
|
| #include "chrome/browser/plugins/plugin_finder.h"
|
| #include "chrome/browser/prefs/incognito_mode_prefs.h"
|
| +#include "chrome/browser/prefs/pref_registrar_simple.h"
|
| #include "chrome/browser/prefs/pref_service.h"
|
| #include "chrome/browser/prefs/session_startup_pref.h"
|
| #include "chrome/browser/profiles/chrome_version_service.h"
|
| @@ -144,77 +146,80 @@ enum MigratedPreferences {
|
|
|
| namespace chrome {
|
|
|
| -void RegisterLocalState(PrefServiceSimple* local_state) {
|
| +void RegisterLocalState(PrefService* local_state) {
|
| + PrefRegistrarSimple registrar(local_state);
|
| +
|
| // Prefs in Local State.
|
| - local_state->RegisterIntegerPref(prefs::kMultipleProfilePrefMigration, 0);
|
| + registrar.RegisterIntegerPref(prefs::kMultipleProfilePrefMigration, 0);
|
|
|
| // Please keep this list alphabetized.
|
| - browser_shutdown::RegisterPrefs(local_state);
|
| - chrome::RegisterScreenshotPrefs(local_state);
|
| - ExternalProtocolHandler::RegisterPrefs(local_state);
|
| - geolocation::RegisterPrefs(local_state);
|
| - IntranetRedirectDetector::RegisterPrefs(local_state);
|
| - KeywordEditorController::RegisterPrefs(local_state);
|
| - MetricsLog::RegisterPrefs(local_state);
|
| - MetricsService::RegisterPrefs(local_state);
|
| - PluginFinder::RegisterPrefs(local_state);
|
| - PrefProxyConfigTrackerImpl::RegisterPrefs(local_state);
|
| - ProfileInfoCache::RegisterPrefs(local_state);
|
| - ProfileManager::RegisterPrefs(local_state);
|
| - PromoResourceService::RegisterPrefs(local_state);
|
| - SigninManagerFactory::RegisterPrefs(local_state);
|
| - SSLConfigServiceManager::RegisterPrefs(local_state);
|
| - WebCacheManager::RegisterPrefs(local_state);
|
| + BrowserProcessImpl::RegisterPrefs(®istrar);
|
| + browser_shutdown::RegisterPrefs(®istrar);
|
| + chrome::RegisterScreenshotPrefs(®istrar);
|
| + ExternalProtocolHandler::RegisterPrefs(®istrar);
|
| + geolocation::RegisterPrefs(®istrar);
|
| + IntranetRedirectDetector::RegisterPrefs(®istrar);
|
| + KeywordEditorController::RegisterPrefs(®istrar);
|
| + MetricsLog::RegisterPrefs(®istrar);
|
| + MetricsService::RegisterPrefs(®istrar);
|
| + PluginFinder::RegisterPrefs(®istrar);
|
| + PrefProxyConfigTrackerImpl::RegisterPrefs(®istrar);
|
| + ProfileInfoCache::RegisterPrefs(®istrar);
|
| + ProfileManager::RegisterPrefs(®istrar);
|
| + PromoResourceService::RegisterPrefs(local_state, ®istrar);
|
| + SigninManagerFactory::RegisterPrefs(®istrar);
|
| + SSLConfigServiceManager::RegisterPrefs(®istrar);
|
| + WebCacheManager::RegisterPrefs(®istrar);
|
|
|
| #if defined(ENABLE_PLUGIN_INSTALLATION)
|
| - PluginsResourceService::RegisterPrefs(local_state);
|
| + PluginsResourceService::RegisterPrefs(®istrar);
|
| #endif
|
|
|
| #if defined(ENABLE_CONFIGURATION_POLICY)
|
| - policy::CloudPolicySubsystem::RegisterPrefs(local_state);
|
| - policy::PolicyStatisticsCollector::RegisterPrefs(local_state);
|
| + policy::CloudPolicySubsystem::RegisterPrefs(®istrar);
|
| + policy::PolicyStatisticsCollector::RegisterPrefs(®istrar);
|
| #endif
|
|
|
| #if defined(ENABLE_NOTIFICATIONS)
|
| - NotificationPrefsManager::RegisterPrefs(local_state);
|
| + NotificationPrefsManager::RegisterPrefs(®istrar);
|
| #endif
|
|
|
| #if defined(ENABLE_TASK_MANAGER)
|
| - TaskManager::RegisterPrefs(local_state);
|
| + TaskManager::RegisterPrefs(®istrar);
|
| #endif // defined(ENABLE_TASK_MANAGER)
|
|
|
| #if defined(TOOLKIT_VIEWS)
|
| - RegisterBrowserViewPrefs(local_state);
|
| - RegisterTabStripLayoutTypePrefs(local_state);
|
| + RegisterBrowserViewPrefs(®istrar);
|
| + RegisterTabStripLayoutTypePrefs(®istrar);
|
| #endif
|
|
|
| #if !defined(OS_ANDROID)
|
| - BackgroundModeManager::RegisterPrefs(local_state);
|
| - chrome_variations::VariationsService::RegisterPrefs(local_state);
|
| - RegisterBrowserPrefs(local_state);
|
| - FlagsUI::RegisterPrefs(local_state);
|
| - ManagedMode::RegisterPrefs(local_state);
|
| - UpgradeDetector::RegisterPrefs(local_state);
|
| + BackgroundModeManager::RegisterPrefs(®istrar);
|
| + chrome_variations::VariationsService::RegisterPrefs(®istrar);
|
| + RegisterBrowserPrefs(®istrar);
|
| + FlagsUI::RegisterPrefs(®istrar);
|
| + ManagedMode::RegisterPrefs(®istrar);
|
| + UpgradeDetector::RegisterPrefs(®istrar);
|
| #endif
|
|
|
| #if defined(OS_CHROMEOS)
|
| - chromeos::AudioHandler::RegisterPrefs(local_state);
|
| - chromeos::DataPromoNotification::RegisterPrefs(local_state);
|
| - chromeos::device_settings_cache::RegisterPrefs(local_state);
|
| - chromeos::language_prefs::RegisterPrefs(local_state);
|
| - chromeos::ProxyConfigServiceImpl::RegisterPrefs(local_state);
|
| - chromeos::RegisterDisplayLocalStatePrefs(local_state);
|
| - chromeos::ServicesCustomizationDocument::RegisterPrefs(local_state);
|
| - chromeos::UserImageManager::RegisterPrefs(local_state);
|
| - chromeos::UserManager::RegisterPrefs(local_state);
|
| - chromeos::WallpaperManager::RegisterPrefs(local_state);
|
| - chromeos::WizardController::RegisterPrefs(local_state);
|
| - policy::AutoEnrollmentClient::RegisterPrefs(local_state);
|
| - policy::DeviceStatusCollector::RegisterPrefs(local_state);
|
| + chromeos::AudioHandler::RegisterPrefs(®istrar);
|
| + chromeos::DataPromoNotification::RegisterPrefs(®istrar);
|
| + chromeos::device_settings_cache::RegisterPrefs(®istrar);
|
| + chromeos::language_prefs::RegisterPrefs(®istrar);
|
| + chromeos::ProxyConfigServiceImpl::RegisterPrefs(®istrar);
|
| + chromeos::RegisterDisplayLocalStatePrefs(®istrar);
|
| + chromeos::ServicesCustomizationDocument::RegisterPrefs(®istrar);
|
| + chromeos::UserImageManager::RegisterPrefs(®istrar);
|
| + chromeos::UserManager::RegisterPrefs(®istrar);
|
| + chromeos::WallpaperManager::RegisterPrefs(®istrar);
|
| + chromeos::WizardController::RegisterPrefs(®istrar);
|
| + policy::AutoEnrollmentClient::RegisterPrefs(®istrar);
|
| + policy::DeviceStatusCollector::RegisterPrefs(®istrar);
|
| #endif
|
|
|
| #if defined(OS_MACOSX)
|
| - confirm_quit::RegisterLocalState(local_state);
|
| + confirm_quit::RegisterLocalState(®istrar);
|
| #endif
|
| }
|
|
|
| @@ -316,17 +321,18 @@ void MigrateUserPrefs(Profile* profile) {
|
| prefs->UnregisterPreference(kBackupPref);
|
| }
|
|
|
| -void MigrateBrowserPrefs(Profile* profile, PrefServiceSimple* local_state) {
|
| +void MigrateBrowserPrefs(Profile* profile, PrefService* local_state) {
|
| // Copy pref values which have been migrated to user_prefs from local_state,
|
| // or remove them from local_state outright, if copying is not required.
|
| int current_version =
|
| local_state->GetInteger(prefs::kMultipleProfilePrefMigration);
|
| + PrefRegistrarSimple registrar(local_state);
|
|
|
| if (!(current_version & DNS_PREFS)) {
|
| - local_state->RegisterListPref(prefs::kDnsStartupPrefetchList);
|
| + registrar.RegisterListPref(prefs::kDnsStartupPrefetchList);
|
| local_state->ClearPref(prefs::kDnsStartupPrefetchList);
|
|
|
| - local_state->RegisterListPref(prefs::kDnsHostReferralList);
|
| + registrar.RegisterListPref(prefs::kDnsHostReferralList);
|
| local_state->ClearPref(prefs::kDnsHostReferralList);
|
|
|
| current_version |= DNS_PREFS;
|
| @@ -336,7 +342,7 @@ void MigrateBrowserPrefs(Profile* profile, PrefServiceSimple* local_state) {
|
|
|
| PrefServiceSyncable* user_prefs = profile->GetPrefs();
|
| if (!(current_version & WINDOWS_PREFS)) {
|
| - local_state->RegisterIntegerPref(prefs::kDevToolsHSplitLocation, -1);
|
| + registrar.RegisterIntegerPref(prefs::kDevToolsHSplitLocation, -1);
|
| if (local_state->HasPrefPath(prefs::kDevToolsHSplitLocation)) {
|
| user_prefs->SetInteger(
|
| prefs::kDevToolsHSplitLocation,
|
| @@ -344,7 +350,7 @@ void MigrateBrowserPrefs(Profile* profile, PrefServiceSimple* local_state) {
|
| }
|
| local_state->ClearPref(prefs::kDevToolsHSplitLocation);
|
|
|
| - local_state->RegisterDictionaryPref(prefs::kBrowserWindowPlacement);
|
| + registrar.RegisterDictionaryPref(prefs::kBrowserWindowPlacement);
|
| if (local_state->HasPrefPath(prefs::kBrowserWindowPlacement)) {
|
| const PrefService::Preference* pref =
|
| local_state->FindPreference(prefs::kBrowserWindowPlacement);
|
| @@ -361,16 +367,16 @@ void MigrateBrowserPrefs(Profile* profile, PrefServiceSimple* local_state) {
|
|
|
| if (!(current_version & GOOGLE_URL_TRACKER_PREFS)) {
|
| GoogleURLTrackerFactory::GetInstance()->RegisterUserPrefsOnProfile(profile);
|
| - local_state->RegisterStringPref(prefs::kLastKnownGoogleURL,
|
| - GoogleURLTracker::kDefaultGoogleHomepage);
|
| + registrar.RegisterStringPref(prefs::kLastKnownGoogleURL,
|
| + GoogleURLTracker::kDefaultGoogleHomepage);
|
| if (local_state->HasPrefPath(prefs::kLastKnownGoogleURL)) {
|
| user_prefs->SetString(prefs::kLastKnownGoogleURL,
|
| local_state->GetString(prefs::kLastKnownGoogleURL));
|
| }
|
| local_state->ClearPref(prefs::kLastKnownGoogleURL);
|
|
|
| - local_state->RegisterStringPref(prefs::kLastPromptedGoogleURL,
|
| - std::string());
|
| + registrar.RegisterStringPref(prefs::kLastPromptedGoogleURL,
|
| + std::string());
|
| if (local_state->HasPrefPath(prefs::kLastPromptedGoogleURL)) {
|
| user_prefs->SetString(
|
| prefs::kLastPromptedGoogleURL,
|
|
|