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

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: 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 a5b3dbb99a9bf2635adce83d309bcfc4a2fe3931..0b20c244ff360945503bd6f2327ac0de8f616cfd 100644
--- a/chrome/browser/translate/translate_manager.cc
+++ b/chrome/browser/translate/translate_manager.cc
@@ -54,6 +54,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
@@ -314,6 +315,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) {
+ std::string locale = g_browser_process->GetApplicationLocale();
Takashi Toyoshima 2013/05/21 11:11:43 const std::string&
hajimehoshi 2013/05/22 04:19:27 Done.
+ return l10n_util::IsLocaleNameTranslated(language, locale);;
+}
+
void TranslateManager::Observe(int type,
const content::NotificationSource& source,
const content::NotificationDetails& details) {
@@ -572,6 +579,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;
}
@@ -761,14 +771,17 @@ void TranslateManager::DoTranslatePage(WebContents* web_contents,
void TranslateManager::PageTranslated(WebContents* web_contents,
PageTranslatedDetails* details) {
- if ((details->error_type == TranslateErrors::NONE) &&
- !IsSupportedLanguage(details->source_language)) {
+ if (details->error_type == TranslateErrors::NONE) {
// TODO(jcivelli): http://crbug.com/9390 We should change the "after
Takashi Toyoshima 2013/05/21 11:11:43 remove this TODO.
hajimehoshi 2013/05/22 04:19:27 Done.
// translate" infobar to support unknown as the original
// language.
- TranslateManagerMetrics::ReportUnsupportedLanguage();
- details->error_type = TranslateErrors::UNSUPPORTED_LANGUAGE;
+ std::string language = details->source_language;
Takashi Toyoshima 2013/05/21 11:11:43 const std::string&
hajimehoshi 2013/05/22 04:19:27 Done.
+ if (!IsAvailableLanguage(language)) {
+ TranslateManagerMetrics::ReportUnavailableLanguage(language);
+ details->error_type = TranslateErrors::UNSUPPORTED_LANGUAGE;
+ }
}
+
Profile* profile =
Profile::FromBrowserContext(web_contents->GetBrowserContext());
PrefService* prefs = profile->GetPrefs();

Powered by Google App Engine
This is Rietveld 408576698