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

Side by Side Diff: chrome/browser/profile_resetter/profile_resetter.cc

Issue 15572002: Implemented 'Reset Search engines' feature. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Android compilation error Created 7 years, 7 months 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 unified diff | Download patch
OLDNEW
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 "chrome/browser/profiles/profile.h" 7 #include "chrome/browser/profiles/profile.h"
8 #include "chrome/browser/search_engines/template_url_prepopulate_data.h"
9 #include "chrome/browser/search_engines/template_url_service.h"
10 #include "chrome/browser/search_engines/template_url_service_factory.h"
8 #include "content/public/browser/browser_thread.h" 11 #include "content/public/browser/browser_thread.h"
9 12
10 ProfileResetter::ProfileResetter(Profile* profile) 13 ProfileResetter::ProfileResetter(Profile* profile)
11 : profile_(profile), 14 : profile_(profile),
12 pending_reset_flags_(0) { 15 pending_reset_flags_(0) {
13 DCHECK(CalledOnValidThread()); 16 DCHECK(CalledOnValidThread());
17 DCHECK(profile_);
14 } 18 }
15 19
16 ProfileResetter::~ProfileResetter() {} 20 ProfileResetter::~ProfileResetter() {}
17 21
18 void ProfileResetter::Reset(ProfileResetter::ResettableFlags resettable_flags, 22 void ProfileResetter::Reset(ProfileResetter::ResettableFlags resettable_flags,
19 ExtensionHandling extension_handling, 23 ExtensionHandling extension_handling,
20 const base::Closure& callback) { 24 const base::Closure& callback) {
21 DCHECK(CalledOnValidThread()); 25 DCHECK(CalledOnValidThread());
22 26
23 // We should never be called with unknown flags. 27 // We should never be called with unknown flags.
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 CHECK(pending_reset_flags_ & resettable); 72 CHECK(pending_reset_flags_ & resettable);
69 73
70 pending_reset_flags_ &= ~resettable; 74 pending_reset_flags_ &= ~resettable;
71 75
72 if (!pending_reset_flags_) 76 if (!pending_reset_flags_)
73 callback_.Run(); 77 callback_.Run();
74 } 78 }
75 79
76 void ProfileResetter::ResetDefaultSearchEngine() { 80 void ProfileResetter::ResetDefaultSearchEngine() {
77 DCHECK(CalledOnValidThread()); 81 DCHECK(CalledOnValidThread());
78 NOTIMPLEMENTED(); 82
79 // TODO(battre/vabr): Implement 83 TemplateURLPrepopulateData::ClearPrepopulatedEnginesInPrefs(profile_);
84 TemplateURLService* template_url_service =
85 TemplateURLServiceFactory::GetForProfile(profile_);
86 DCHECK(template_url_service);
87 template_url_service->ClearDefaultProviderFromPrefs();
88 template_url_service->ResetNonExtensionURLs();
89
80 MarkAsDone(DEFAULT_SEARCH_ENGINE); 90 MarkAsDone(DEFAULT_SEARCH_ENGINE);
81 } 91 }
82 92
83 void ProfileResetter::ResetHomepage() { 93 void ProfileResetter::ResetHomepage() {
84 DCHECK(CalledOnValidThread()); 94 DCHECK(CalledOnValidThread());
85 NOTIMPLEMENTED(); 95 NOTIMPLEMENTED();
86 // TODO(battre/vabr): Implement 96 // TODO(battre/vabr): Implement
87 MarkAsDone(HOMEPAGE); 97 MarkAsDone(HOMEPAGE);
88 } 98 }
89 99
(...skipping 10 matching lines...) Expand all
100 // TODO(battre/vabr): Implement 110 // TODO(battre/vabr): Implement
101 MarkAsDone(COOKIES_AND_SITE_DATA); 111 MarkAsDone(COOKIES_AND_SITE_DATA);
102 } 112 }
103 113
104 void ProfileResetter::ResetExtensions(ExtensionHandling extension_handling) { 114 void ProfileResetter::ResetExtensions(ExtensionHandling extension_handling) {
105 DCHECK(CalledOnValidThread()); 115 DCHECK(CalledOnValidThread());
106 NOTIMPLEMENTED(); 116 NOTIMPLEMENTED();
107 // TODO(battre/vabr): Implement 117 // TODO(battre/vabr): Implement
108 MarkAsDone(EXTENSIONS); 118 MarkAsDone(EXTENSIONS);
109 } 119 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698