Chromium Code Reviews| Index: components/content_settings/core/browser/content_settings_default_provider.cc |
| diff --git a/components/content_settings/core/browser/content_settings_default_provider.cc b/components/content_settings/core/browser/content_settings_default_provider.cc |
| index a0a3e33ca8f1632e13c604bb27466de0cd87fcd8..57c573f1f69c6850ecff4496f51c9b20aedca14d 100644 |
| --- a/components/content_settings/core/browser/content_settings_default_provider.cc |
| +++ b/components/content_settings/core/browser/content_settings_default_provider.cc |
| @@ -133,6 +133,13 @@ void DefaultProvider::RegisterProfilePrefs( |
| prefs::kMigratedDefaultContentSettings, |
| false, |
| user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); |
| + |
| + // Whether the deprecated mediastream default setting has already been |
| + // migrated into microphone and camera default settings. |
| + registry->RegisterBooleanPref( |
| + prefs::kMigratedDefaultMediaStreamSetting, |
| + false, |
| + user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| } |
| DefaultProvider::DefaultProvider(PrefService* prefs, bool incognito) |
| @@ -145,6 +152,10 @@ DefaultProvider::DefaultProvider(PrefService* prefs, bool incognito) |
| // preferences. |
| MigrateDefaultSettings(); |
| + // Migrate the obsolete media stream default setting into the new microphone |
| + // and camera settings. |
| + MigrateObsoleteMediaContentSetting(); |
| + |
| // Read global defaults. |
| ReadDefaultSettings(); |
| @@ -505,4 +516,18 @@ void DefaultProvider::MigrateDefaultSettings() { |
| prefs_->SetBoolean(prefs::kMigratedDefaultContentSettings, true); |
| } |
| +void DefaultProvider::MigrateObsoleteMediaContentSetting() { |
| + // We only do the migration once. |
| + if (prefs_->GetBoolean(prefs::kMigratedDefaultMediaStreamSetting)) |
| + return; |
|
msramek
2015/03/25 10:45:08
I rebased over 1004733003 and forgot to split the
|
| + |
| + scoped_ptr<base::Value> value = ReadIndividualPref( |
| + CONTENT_SETTINGS_TYPE_MEDIASTREAM); |
| + WriteIndividualPref(CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC, value.get()); |
| + WriteIndividualPref(CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA, value.get()); |
| + WriteIndividualPref(CONTENT_SETTINGS_TYPE_MEDIASTREAM, NULL); |
| + |
| + prefs_->SetBoolean(prefs::kMigratedDefaultMediaStreamSetting, true); |
| +} |
| + |
| } // namespace content_settings |