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

Unified Diff: chrome/browser/translate/translate_prefs.cc

Issue 12221147: Extend the translate prefs interface with new methods to clear/check blacklisted sites/languages (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 10 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/translate/translate_prefs.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/translate/translate_prefs.cc
diff --git a/chrome/browser/translate/translate_prefs.cc b/chrome/browser/translate/translate_prefs.cc
index e80e9fb375ad4b6210154962c91120efeebeeb52..db61e3e1bd65728b8f30ebe912fb06955c43c6f1 100644
--- a/chrome/browser/translate/translate_prefs.cc
+++ b/chrome/browser/translate/translate_prefs.cc
@@ -27,7 +27,7 @@ TranslatePrefs::TranslatePrefs(PrefService* user_prefs)
}
bool TranslatePrefs::IsLanguageBlacklisted(
- const std::string& original_language) {
+ const std::string& original_language) const {
return IsValueBlacklisted(kPrefTranslateLanguageBlacklist, original_language);
}
@@ -40,7 +40,7 @@ void TranslatePrefs::RemoveLanguageFromBlacklist(
RemoveValueFromBlacklist(kPrefTranslateLanguageBlacklist, original_language);
}
-bool TranslatePrefs::IsSiteBlacklisted(const std::string& site) {
+bool TranslatePrefs::IsSiteBlacklisted(const std::string& site) const {
return IsValueBlacklisted(kPrefTranslateSiteBlacklist, site);
}
@@ -89,7 +89,24 @@ void TranslatePrefs::RemoveLanguagePairFromWhitelist(
dict->Remove(original_language, NULL);
}
-int TranslatePrefs::GetTranslationDeniedCount(const std::string& language) {
+bool TranslatePrefs::HasBlacklistedLanguages() const {
+ return !IsListEmpty(kPrefTranslateLanguageBlacklist);
+}
+
+void TranslatePrefs::ClearBlacklistedLanguages() {
+ prefs_->ClearPref(kPrefTranslateLanguageBlacklist);
+}
+
+bool TranslatePrefs::HasBlacklistedSites() {
+ return !IsListEmpty(kPrefTranslateSiteBlacklist);
+}
+
+void TranslatePrefs::ClearBlacklistedSites() {
+ prefs_->ClearPref(kPrefTranslateSiteBlacklist);
+}
+
+int TranslatePrefs::GetTranslationDeniedCount(
+ const std::string& language) const {
const DictionaryValue* dict =
prefs_->GetDictionary(kPrefTranslateDeniedCount);
int count = 0;
@@ -210,7 +227,7 @@ void TranslatePrefs::MigrateTranslateWhitelists(PrefService* user_prefs) {
// TranslatePrefs: private: ----------------------------------------------------
bool TranslatePrefs::IsValueInList(const ListValue* list,
- const std::string& in_value) {
+ const std::string& in_value) const {
for (size_t i = 0; i < list->GetSize(); ++i) {
std::string value;
if (list->GetString(i, &value) && value == in_value)
@@ -220,7 +237,7 @@ bool TranslatePrefs::IsValueInList(const ListValue* list,
}
bool TranslatePrefs::IsValueBlacklisted(const char* pref_id,
- const std::string& value) {
+ const std::string& value) const {
const ListValue* blacklist = prefs_->GetList(pref_id);
return (blacklist && !blacklist->empty() && IsValueInList(blacklist, value));
}
@@ -251,7 +268,7 @@ void TranslatePrefs::RemoveValueFromBlacklist(const char* pref_id,
}
bool TranslatePrefs::IsLanguageWhitelisted(
- const std::string& original_language, std::string* target_language) {
+ const std::string& original_language, std::string* target_language) const {
const DictionaryValue* dict = prefs_->GetDictionary(kPrefTranslateWhitelists);
if (dict && dict->GetString(original_language, target_language)) {
DCHECK(!target_language->empty());
@@ -259,3 +276,8 @@ bool TranslatePrefs::IsLanguageWhitelisted(
}
return false;
}
+
+bool TranslatePrefs::IsListEmpty(const char* pref_id) const {
+ const ListValue* blacklist = prefs_->GetList(pref_id);
+ return (blacklist == NULL || blacklist->empty());
+}
« no previous file with comments | « chrome/browser/translate/translate_prefs.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698