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

Side by Side Diff: chrome/renderer/translate/translate_helper_metrics.h

Issue 15728002: Translate: adopt html lang attribute if valid value is provided (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix WindowOpenClose crash Created 7 years, 6 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 #ifndef CHROME_RENDERER_TRANSLATE_TRANSLATE_HELPER_METRICS_H_ 5 #ifndef CHROME_RENDERER_TRANSLATE_TRANSLATE_HELPER_METRICS_H_
6 #define CHROME_RENDERER_TRANSLATE_TRANSLATE_HELPER_METRICS_H_ 6 #define CHROME_RENDERER_TRANSLATE_TRANSLATE_HELPER_METRICS_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/time.h" 10 #include "base/time.h"
11 11
12 namespace TranslateHelperMetrics { 12 namespace TranslateHelperMetrics {
13 13
14 // An indexing type to query each UMA entry name via GetMetricsName() function. 14 // An indexing type to query each UMA entry name via GetMetricsName() function.
15 // Note: |kMetricsEntries| should be updated when a new entry is added here. 15 // Note: |kMetricsEntries| should be updated when a new entry is added here.
16 enum MetricsNameIndex { 16 enum MetricsNameIndex {
17 UMA_LANGUAGE_DETECTION, 17 UMA_LANGUAGE_DETECTION,
18 UMA_CONTENT_LANGUAGE, 18 UMA_CONTENT_LANGUAGE,
19 UMA_HTML_LANG,
19 UMA_LANGUAGE_VERIFICATION, 20 UMA_LANGUAGE_VERIFICATION,
20 UMA_TIME_TO_BE_READY, 21 UMA_TIME_TO_BE_READY,
21 UMA_TIME_TO_LOAD, 22 UMA_TIME_TO_LOAD,
22 UMA_TIME_TO_TRANSLATE, 23 UMA_TIME_TO_TRANSLATE,
23 UMA_USER_ACTION_DURATION, 24 UMA_USER_ACTION_DURATION,
24 UMA_PAGE_SCHEME, 25 UMA_PAGE_SCHEME,
25 UMA_MAX, 26 UMA_MAX,
26 }; 27 };
27 28
28 // A page may provide a Content-Language HTTP header or a META tag. 29 // A page may provide a Content-Language HTTP header or a META tag.
29 // TranslateHelper checks if a server provides a valid Content-Language. 30 // TranslateHelper checks if a server provides a valid Content-Language.
30 enum ContentLanguageType { 31 enum LanguageCheckType {
31 CONTENT_LANGUAGE_NOT_PROVIDED, 32 LANGUAGE_NOT_PROVIDED,
32 CONTENT_LANGUAGE_VALID, 33 LANGUAGE_VALID,
33 CONTENT_LANGUAGE_INVALID, 34 LANGUAGE_INVALID,
34 CONTENT_LANGUAGE_MAX, 35 LANGUAGE_MAX,
35 }; 36 };
36 37
37 // When a valid Content-Language is provided, TranslateHelper checks if a 38 // When a valid Content-Language is provided, TranslateHelper checks if a
38 // server provided Content-Language matches to a language CLD determined. 39 // server provided Content-Language matches to a language CLD determined.
39 enum LanguageVerificationType { 40 enum LanguageVerificationType {
40 LANGUAGE_VERIFICATION_CLD_DISABLED, 41 LANGUAGE_VERIFICATION_CLD_DISABLED,
41 LANGUAGE_VERIFICATION_CLD_ONLY, 42 LANGUAGE_VERIFICATION_CLD_ONLY,
42 LANGUAGE_VERIFICATION_UNKNOWN, 43 LANGUAGE_VERIFICATION_UNKNOWN,
43 LANGUAGE_VERIFICATION_CLD_AGREE, 44 LANGUAGE_VERIFICATION_CLD_AGREE,
44 LANGUAGE_VERIFICATION_CLD_DISAGREE, 45 LANGUAGE_VERIFICATION_CLD_DISAGREE,
45 LANGUAGE_VERIFICATION_MAX, 46 LANGUAGE_VERIFICATION_MAX,
46 }; 47 };
47 48
48 // Scheme type of pages Chrome is going to translate. 49 // Scheme type of pages Chrome is going to translate.
49 enum SchemeType { 50 enum SchemeType {
50 SCHEME_HTTP, 51 SCHEME_HTTP,
51 SCHEME_HTTPS, 52 SCHEME_HTTPS,
52 SCHEME_OTHERS, 53 SCHEME_OTHERS,
53 SCHEME_MAX, 54 SCHEME_MAX,
54 }; 55 };
55 56
56 // Called after TranslateHelper verifies a server providing Content-Language 57 // Called after TranslateHelper verifies a server providing Content-Language
57 // header. |provided_code| contains a Content-Language header value which 58 // header. |provided_code| contains a Content-Language header value which a
58 // server provides. It can be empty string when a server doesn't provide it. 59 // server provides. It can be empty string when a server doesn't provide it.
59 // |revised_code| is a value modified by format error corrector. 60 // |revised_code| is a value modified by format error corrector.
60 void ReportContentLanguage(const std::string& provided_code, 61 void ReportContentLanguage(const std::string& provided_code,
61 const std::string& revised_code); 62 const std::string& revised_code);
62 63
64 // Called after TranslateHelper verifies a page providing html lang attribute.
65 // |provided_code| contains a html lang attribute which a page provides. It can
66 // be empty string when a page doesn't provide it. |revised_code| is a value
67 // modified by format error corrector.
68 void ReportHtmlLang(const std::string& provided_code,
69 const std::string& revised_code);
70
63 // Called when CLD verifies Content-Language header. 71 // Called when CLD verifies Content-Language header.
64 void ReportLanguageVerification(LanguageVerificationType type); 72 void ReportLanguageVerification(LanguageVerificationType type);
65 73
66 // Called when the Translate Element library is ready. 74 // Called when the Translate Element library is ready.
67 void ReportTimeToBeReady(double time_in_msec); 75 void ReportTimeToBeReady(double time_in_msec);
68 76
69 // Called when the Translate Element library is loaded. 77 // Called when the Translate Element library is loaded.
70 void ReportTimeToLoad(double time_in_msec); 78 void ReportTimeToLoad(double time_in_msec);
71 79
72 // Called when a page translation is finished. 80 // Called when a page translation is finished.
(...skipping 11 matching lines...) Expand all
84 void ReportLanguageDetectionTime(base::TimeTicks begin, base::TimeTicks end); 92 void ReportLanguageDetectionTime(base::TimeTicks begin, base::TimeTicks end);
85 93
86 #endif // defined(ENABLE_LANGUAGE_DETECTION) 94 #endif // defined(ENABLE_LANGUAGE_DETECTION)
87 95
88 // Gets UMA name for an entry specified by |index|. 96 // Gets UMA name for an entry specified by |index|.
89 const char* GetMetricsName(MetricsNameIndex index); 97 const char* GetMetricsName(MetricsNameIndex index);
90 98
91 } // namespace TranslateHelperMetrics 99 } // namespace TranslateHelperMetrics
92 100
93 #endif // CHROME_RENDERER_TRANSLATE_TRANSLATE_HELPER_METRICS_H_ 101 #endif // CHROME_RENDERER_TRANSLATE_TRANSLATE_HELPER_METRICS_H_
OLDNEW
« no previous file with comments | « chrome/renderer/translate/translate_helper.cc ('k') | chrome/renderer/translate/translate_helper_metrics.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698