| Index: chrome/browser/spellchecker/spellcheck_service.cc
|
| diff --git a/chrome/browser/spellchecker/spellcheck_service.cc b/chrome/browser/spellchecker/spellcheck_service.cc
|
| index 6a71e1697dfc07c7802e8a2a86466cdc9f60f9d8..eff9d5ab9b6be9fac8b4eb7bb9f43bad5d896542 100644
|
| --- a/chrome/browser/spellchecker/spellcheck_service.cc
|
| +++ b/chrome/browser/spellchecker/spellcheck_service.cc
|
| @@ -48,6 +48,10 @@ SpellcheckService::SpellcheckService(Profile* profile)
|
| prefs::kSpellCheckDictionary,
|
| base::Bind(&SpellcheckService::OnSpellCheckDictionaryChanged,
|
| base::Unretained(this)));
|
| + pref_change_registrar_.Add(
|
| + prefs::kSpellCheckUseSpellingService,
|
| + base::Bind(&SpellcheckService::OnUseSpellingServiceChanged,
|
| + base::Unretained(this)));
|
| pref_change_registrar_.Add(
|
| prefs::kEnableContinuousSpellcheck,
|
| base::Bind(&SpellcheckService::InitForAllRenderers,
|
| @@ -139,6 +143,7 @@ bool SpellcheckService::SignalStatusEvent(
|
| void SpellcheckService::StartRecordingMetrics(bool spellcheck_enabled) {
|
| metrics_.reset(new SpellCheckHostMetrics());
|
| metrics_->RecordEnabledStats(spellcheck_enabled);
|
| + OnUseSpellingServiceChanged();
|
| }
|
|
|
| void SpellcheckService::InitForRenderer(content::RenderProcessHost* process) {
|
| @@ -271,3 +276,10 @@ void SpellcheckService::OnSpellCheckDictionaryChanged() {
|
| hunspell_dictionary_->AddObserver(this);
|
| hunspell_dictionary_->Load();
|
| }
|
| +
|
| +void SpellcheckService::OnUseSpellingServiceChanged() {
|
| + bool enabled = pref_change_registrar_.prefs()->GetBoolean(
|
| + prefs::kSpellCheckUseSpellingService);
|
| + if (metrics_)
|
| + metrics_->RecordSpellingServiceStats(enabled);
|
| +}
|
|
|