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

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

Issue 15311006: Added and replaced some UMAs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Moved ToLanguageCode back Created 7 years, 7 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
Index: chrome/browser/translate/translate_manager.cc
diff --git a/chrome/browser/translate/translate_manager.cc b/chrome/browser/translate/translate_manager.cc
index 383e577e27a780b53a26c7e08d1e75298985e367..780032834551b85639bf17900f3236b93b64e00e 100644
--- a/chrome/browser/translate/translate_manager.cc
+++ b/chrome/browser/translate/translate_manager.cc
@@ -56,6 +56,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"
#include "ui/base/resource/resource_bundle.h"
#ifdef FILE_MANAGER_EXTENSION
@@ -316,6 +317,12 @@ bool TranslateManager::IsSupportedLanguage(const std::string& page_language) {
return supported_languages_.Pointer()->count(page_language) != 0;
}
+// static
+bool TranslateManager::IsAvailableLanguage(const std::string& language) {
+ const std::string& locale = g_browser_process->GetApplicationLocale();
+ return l10n_util::IsLocaleNameTranslated(language, locale);;
+}
+
void TranslateManager::Observe(int type,
const content::NotificationSource& source,
const content::NotificationDetails& details) {
@@ -592,6 +599,9 @@ void TranslateManager::InitiateTranslation(WebContents* web_contents,
if (target_lang.empty() || !IsSupportedLanguage(language_code)) {
TranslateManagerMetrics::ReportInitiationStatus(
TranslateManagerMetrics::INITIATION_STATUS_LANGUAGE_IS_NOT_SUPPORTED);
+ TranslateManagerMetrics::ReportUnsupportedLanguageAtInitiation(
+ language_code);
+
return;
}
@@ -781,13 +791,12 @@ void TranslateManager::DoTranslatePage(WebContents* web_contents,
void TranslateManager::PageTranslated(WebContents* web_contents,
PageTranslatedDetails* details) {
- if ((details->error_type == TranslateErrors::NONE) &&
- !IsSupportedLanguage(details->source_language)) {
- // TODO(jcivelli): http://crbug.com/9390 We should change the "after
- // translate" infobar to support unknown as the original
- // language.
- TranslateManagerMetrics::ReportUnsupportedLanguage();
- details->error_type = TranslateErrors::UNSUPPORTED_LANGUAGE;
+ if (details->error_type == TranslateErrors::NONE) {
+ const std::string& language = details->source_language;
+ if (!IsAvailableLanguage(language)) {
+ TranslateManagerMetrics::ReportUnavailableLanguage(language);
+ details->error_type = TranslateErrors::UNSUPPORTED_LANGUAGE;
+ }
}
Profile* profile =

Powered by Google App Engine
This is Rietveld 408576698