Chromium Code Reviews| Index: chrome/browser/translate/translate_language_list.cc |
| diff --git a/chrome/browser/translate/translate_language_list.cc b/chrome/browser/translate/translate_language_list.cc |
| index 99e3c6e650ae436119538dc2f83a72459232ca08..8d0441d99e17512e00ba468d9d3c647cb973ee18 100644 |
| --- a/chrome/browser/translate/translate_language_list.cc |
| +++ b/chrome/browser/translate/translate_language_list.cc |
| @@ -13,6 +13,7 @@ |
| #include "base/string_util.h" |
| #include "base/values.h" |
| #include "chrome/browser/browser_process.h" |
| +#include "chrome/browser/translate/translate_manager_metrics.h" |
|
Takashi Toyoshima
2013/05/30 06:04:31
now that we use it out of TranslateManager, let's
hajimehoshi
2013/05/30 06:44:56
Done.
|
| #include "chrome/browser/translate/translate_url_util.h" |
| #include "chrome/common/chrome_switches.h" |
| #include "googleurl/src/gurl.h" |
| @@ -21,6 +22,7 @@ |
| #include "net/http/http_status_code.h" |
| #include "net/url_request/url_fetcher.h" |
| #include "net/url_request/url_request_status.h" |
| +#include "ui/base/l10n/l10n_util.h" |
| namespace { |
| @@ -231,12 +233,20 @@ void TranslateLanguageList::SetSupportedLanguages( |
| NOTREACHED(); |
| return; |
| } |
| + |
| + const std::string& locale = g_browser_process->GetApplicationLocale(); |
| + |
| // Now we can clear our current state... |
| supported_languages_.clear(); |
| // ... and replace it with the values we just fetched from the server. |
| for (DictionaryValue::Iterator iter(*target_languages); |
| !iter.IsAtEnd(); |
| iter.Advance()) { |
| - supported_languages_.insert(iter.key()); |
| + const std::string& lang = iter.key(); |
| + if (!l10n_util::IsLocaleNameTranslated(lang.c_str(), locale)) { |
| + TranslateManagerMetrics::ReportUndisplayableLanguage(lang); |
| + continue; |
| + } |
| + supported_languages_.insert(lang); |
| } |
| } |