OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/profile_resetter/profile_resetter.h" | 5 #include "chrome/browser/profile_resetter/profile_resetter.h" |
6 | 6 |
7 #include "base/prefs/pref_service.h" | 7 #include "base/prefs/pref_service.h" |
8 #include "chrome/browser/browsing_data/browsing_data_helper.h" | 8 #include "chrome/browser/browsing_data/browsing_data_helper.h" |
9 #include "chrome/browser/chrome_notification_types.h" | 9 #include "chrome/browser/chrome_notification_types.h" |
10 #include "chrome/browser/content_settings/host_content_settings_map.h" | 10 #include "chrome/browser/content_settings/host_content_settings_map.h" |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
196 remove_mask &= ~BrowsingDataRemover::REMOVE_PLUGIN_DATA; | 196 remove_mask &= ~BrowsingDataRemover::REMOVE_PLUGIN_DATA; |
197 cookies_remover_->Remove(remove_mask, BrowsingDataHelper::UNPROTECTED_WEB); | 197 cookies_remover_->Remove(remove_mask, BrowsingDataHelper::UNPROTECTED_WEB); |
198 } | 198 } |
199 | 199 |
200 void ProfileResetter::ResetExtensions() { | 200 void ProfileResetter::ResetExtensions() { |
201 DCHECK(CalledOnValidThread()); | 201 DCHECK(CalledOnValidThread()); |
202 | 202 |
203 std::vector<std::string> brandcode_extensions; | 203 std::vector<std::string> brandcode_extensions; |
204 master_settings_->GetExtensions(&brandcode_extensions); | 204 master_settings_->GetExtensions(&brandcode_extensions); |
205 | 205 |
| 206 // These are the types that we disable because they can have an impact on the |
| 207 // core browser (websites the user visits and UI) and their permissions are |
| 208 // not contained to themselves. |
| 209 std::set<extensions::Manifest::Type> type_filter; |
| 210 type_filter.insert(extensions::Manifest::TYPE_EXTENSION); |
| 211 type_filter.insert(extensions::Manifest::TYPE_THEME); |
| 212 type_filter.insert(extensions::Manifest::TYPE_UNKNOWN); |
| 213 type_filter.insert(extensions::Manifest::TYPE_USER_SCRIPT); |
| 214 type_filter.insert(extensions::Manifest::TYPE_LEGACY_PACKAGED_APP); |
| 215 // These are the extension types that we don't disable: |
| 216 // TYPE_HOSTED_APP, TYPE_PLATFORM_APP, TYPE_SHARED_MODULE. |
| 217 |
206 ExtensionService* extension_service = profile_->GetExtensionService(); | 218 ExtensionService* extension_service = profile_->GetExtensionService(); |
207 DCHECK(extension_service); | 219 DCHECK(extension_service); |
208 extension_service->DisableUserExtensions(brandcode_extensions); | 220 extension_service->DisableUserExtensions(type_filter, brandcode_extensions); |
209 | 221 |
210 MarkAsDone(EXTENSIONS); | 222 MarkAsDone(EXTENSIONS); |
211 } | 223 } |
212 | 224 |
213 void ProfileResetter::ResetStartupPages() { | 225 void ProfileResetter::ResetStartupPages() { |
214 DCHECK(CalledOnValidThread()); | 226 DCHECK(CalledOnValidThread()); |
215 PrefService* prefs = profile_->GetPrefs(); | 227 PrefService* prefs = profile_->GetPrefs(); |
216 DCHECK(prefs); | 228 DCHECK(prefs); |
217 scoped_ptr<ListValue> url_list(master_settings_->GetUrlsToRestoreOnStartup()); | 229 scoped_ptr<ListValue> url_list(master_settings_->GetUrlsToRestoreOnStartup()); |
218 if (url_list) | 230 if (url_list) |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
254 // TemplateURLService has loaded. If we need to clean search engines, it's | 266 // TemplateURLService has loaded. If we need to clean search engines, it's |
255 // time to go on. | 267 // time to go on. |
256 if (pending_reset_flags_ & DEFAULT_SEARCH_ENGINE) | 268 if (pending_reset_flags_ & DEFAULT_SEARCH_ENGINE) |
257 ResetDefaultSearchEngine(); | 269 ResetDefaultSearchEngine(); |
258 } | 270 } |
259 | 271 |
260 void ProfileResetter::OnBrowsingDataRemoverDone() { | 272 void ProfileResetter::OnBrowsingDataRemoverDone() { |
261 cookies_remover_ = NULL; | 273 cookies_remover_ = NULL; |
262 MarkAsDone(COOKIES_AND_SITE_DATA); | 274 MarkAsDone(COOKIES_AND_SITE_DATA); |
263 } | 275 } |
OLD | NEW |