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

Side by Side Diff: chrome/browser/speech/chrome_speech_recognition_preferences.cc

Issue 11345008: Remove content::NotificationObserver dependency from most Prefs code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to head for commit Created 8 years, 1 month 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/speech/chrome_speech_recognition_preferences.h" 5 #include "chrome/browser/speech/chrome_speech_recognition_preferences.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/values.h" 8 #include "base/values.h"
9 #include "chrome/browser/prefs/pref_service.h" 9 #include "chrome/browser/prefs/pref_service.h"
10 #include "chrome/browser/profiles/profile.h" 10 #include "chrome/browser/profiles/profile.h"
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 ChromeSpeechRecognitionPreferences::~ChromeSpeechRecognitionPreferences() { 134 ChromeSpeechRecognitionPreferences::~ChromeSpeechRecognitionPreferences() {
135 } 135 }
136 136
137 void ChromeSpeechRecognitionPreferences::DetachFromProfile() { 137 void ChromeSpeechRecognitionPreferences::DetachFromProfile() {
138 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 138 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
139 DCHECK(profile_); 139 DCHECK(profile_);
140 pref_change_registrar_.reset(); 140 pref_change_registrar_.reset();
141 profile_ = NULL; 141 profile_ = NULL;
142 } 142 }
143 143
144 void ChromeSpeechRecognitionPreferences::Observe( 144 void ChromeSpeechRecognitionPreferences::OnPreferenceChanged(
145 int type, 145 PrefServiceBase* service,
146 const content::NotificationSource& source, 146 const std::string& pref_name) {
147 const content::NotificationDetails& details) {
148 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 147 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
149 DCHECK_EQ(type, chrome::NOTIFICATION_PREF_CHANGED); 148 ReloadPreference(pref_name);
150 std::string* pref_name = content::Details<std::string>(details).ptr();
151 ReloadPreference(*pref_name);
152 } 149 }
153 150
154 bool ChromeSpeechRecognitionPreferences::FilterProfanities() const { 151 bool ChromeSpeechRecognitionPreferences::FilterProfanities() const {
155 base::AutoLock read_lock(preferences_lock_); 152 base::AutoLock read_lock(preferences_lock_);
156 return filter_profanities_; 153 return filter_profanities_;
157 } 154 }
158 155
159 void ChromeSpeechRecognitionPreferences::SetFilterProfanities( 156 void ChromeSpeechRecognitionPreferences::SetFilterProfanities(
160 bool filter_profanities) { 157 bool filter_profanities) {
161 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 158 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
205 if (key == prefs::kSpeechRecognitionFilterProfanities) { 202 if (key == prefs::kSpeechRecognitionFilterProfanities) {
206 filter_profanities_ = 203 filter_profanities_ =
207 pref_service->GetBoolean(prefs::kSpeechRecognitionFilterProfanities); 204 pref_service->GetBoolean(prefs::kSpeechRecognitionFilterProfanities);
208 } else if (key == prefs::kSpeechRecognitionTrayNotificationShownContexts) { 205 } else if (key == prefs::kSpeechRecognitionTrayNotificationShownContexts) {
209 const base::ListValue* pref_list = profile_->GetPrefs()->GetList( 206 const base::ListValue* pref_list = profile_->GetPrefs()->GetList(
210 prefs::kSpeechRecognitionTrayNotificationShownContexts); 207 prefs::kSpeechRecognitionTrayNotificationShownContexts);
211 DCHECK(pref_list); 208 DCHECK(pref_list);
212 notifications_shown_.reset(pref_list->DeepCopy()); 209 notifications_shown_.reset(pref_list->DeepCopy());
213 } 210 }
214 } 211 }
OLDNEW
« no previous file with comments | « chrome/browser/speech/chrome_speech_recognition_preferences.h ('k') | chrome/browser/spellchecker/spellcheck_profile.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698