| OLD | NEW | 
|---|
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/translate/translate_prefs.h" | 5 #include "chrome/browser/translate/translate_prefs.h" | 
| 6 | 6 | 
| 7 #include "base/string_util.h" | 7 #include "base/string_util.h" | 
| 8 #include "chrome/browser/prefs/pref_service.h" | 8 #include "chrome/browser/prefs/pref_service.h" | 
| 9 #include "chrome/browser/prefs/scoped_user_pref_update.h" | 9 #include "chrome/browser/prefs/scoped_user_pref_update.h" | 
| 10 | 10 | 
| (...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 145 } | 145 } | 
| 146 | 146 | 
| 147 bool TranslatePrefs::ShouldAutoTranslate(PrefService* user_prefs, | 147 bool TranslatePrefs::ShouldAutoTranslate(PrefService* user_prefs, | 
| 148     const std::string& original_language, std::string* target_language) { | 148     const std::string& original_language, std::string* target_language) { | 
| 149   TranslatePrefs prefs(user_prefs); | 149   TranslatePrefs prefs(user_prefs); | 
| 150   return prefs.IsLanguageWhitelisted(original_language, target_language); | 150   return prefs.IsLanguageWhitelisted(original_language, target_language); | 
| 151 } | 151 } | 
| 152 | 152 | 
| 153 void TranslatePrefs::RegisterUserPrefs(PrefService* user_prefs) { | 153 void TranslatePrefs::RegisterUserPrefs(PrefService* user_prefs) { | 
| 154   if (!user_prefs->FindPreference(kPrefTranslateLanguageBlacklist)) | 154   if (!user_prefs->FindPreference(kPrefTranslateLanguageBlacklist)) | 
| 155     user_prefs->RegisterListPref(kPrefTranslateLanguageBlacklist); | 155     user_prefs->RegisterListPref(kPrefTranslateLanguageBlacklist, | 
|  | 156                                  true /* sync pref */); | 
| 156   if (!user_prefs->FindPreference(kPrefTranslateSiteBlacklist)) | 157   if (!user_prefs->FindPreference(kPrefTranslateSiteBlacklist)) | 
| 157     user_prefs->RegisterListPref(kPrefTranslateSiteBlacklist); | 158     user_prefs->RegisterListPref(kPrefTranslateSiteBlacklist, | 
|  | 159                                  true /* sync pref */); | 
| 158   if (!user_prefs->FindPreference(kPrefTranslateWhitelists)) { | 160   if (!user_prefs->FindPreference(kPrefTranslateWhitelists)) { | 
| 159     user_prefs->RegisterDictionaryPref(kPrefTranslateWhitelists); | 161     user_prefs->RegisterDictionaryPref(kPrefTranslateWhitelists, | 
|  | 162                                        true /* sync pref */); | 
| 160     MigrateTranslateWhitelists(user_prefs); | 163     MigrateTranslateWhitelists(user_prefs); | 
| 161   } | 164   } | 
| 162   if (!user_prefs->FindPreference(kPrefTranslateDeniedCount)) | 165   if (!user_prefs->FindPreference(kPrefTranslateDeniedCount)) | 
| 163     user_prefs->RegisterDictionaryPref(kPrefTranslateDeniedCount); | 166     user_prefs->RegisterDictionaryPref(kPrefTranslateDeniedCount, | 
|  | 167                                        true /* sync pref */); | 
| 164   if (!user_prefs->FindPreference(kPrefTranslateAcceptedCount)) | 168   if (!user_prefs->FindPreference(kPrefTranslateAcceptedCount)) | 
| 165     user_prefs->RegisterDictionaryPref(kPrefTranslateAcceptedCount); | 169     user_prefs->RegisterDictionaryPref(kPrefTranslateAcceptedCount, | 
|  | 170                                        true /* sync pref */); | 
| 166 } | 171 } | 
| 167 | 172 | 
| 168 // TranslatePrefs: private, static: -------------------------------------------- | 173 // TranslatePrefs: private, static: -------------------------------------------- | 
| 169 | 174 | 
| 170 void TranslatePrefs::MigrateTranslateWhitelists(PrefService* user_prefs) { | 175 void TranslatePrefs::MigrateTranslateWhitelists(PrefService* user_prefs) { | 
| 171   // Old format of kPrefTranslateWhitelists | 176   // Old format of kPrefTranslateWhitelists | 
| 172   // - original language -> list of target langs to auto-translate | 177   // - original language -> list of target langs to auto-translate | 
| 173   // - list of langs is in order of being enabled i.e. last in list is the | 178   // - list of langs is in order of being enabled i.e. last in list is the | 
| 174   //   most recent language that user enabled via | 179   //   most recent language that user enabled via | 
| 175   //   Always translate |source_lang| to |target_lang|" | 180   //   Always translate |source_lang| to |target_lang|" | 
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 258 | 263 | 
| 259 bool TranslatePrefs::IsLanguageWhitelisted( | 264 bool TranslatePrefs::IsLanguageWhitelisted( | 
| 260     const std::string& original_language, std::string* target_language) { | 265     const std::string& original_language, std::string* target_language) { | 
| 261   const DictionaryValue* dict = prefs_->GetDictionary(kPrefTranslateWhitelists); | 266   const DictionaryValue* dict = prefs_->GetDictionary(kPrefTranslateWhitelists); | 
| 262   if (dict && dict->GetString(original_language, target_language)) { | 267   if (dict && dict->GetString(original_language, target_language)) { | 
| 263     DCHECK(!target_language->empty()); | 268     DCHECK(!target_language->empty()); | 
| 264     return !target_language->empty(); | 269     return !target_language->empty(); | 
| 265   } | 270   } | 
| 266   return false; | 271   return false; | 
| 267 } | 272 } | 
| OLD | NEW | 
|---|