Index: components/navigation_metrics/navigation_metrics.cc |
diff --git a/components/navigation_metrics/navigation_metrics.cc b/components/navigation_metrics/navigation_metrics.cc |
index e0d61c769f7b6a5daa6c876951b4870d02babf58..314ab74c81e2adae1ce5caa6006ffd0c0986fd9c 100644 |
--- a/components/navigation_metrics/navigation_metrics.cc |
+++ b/components/navigation_metrics/navigation_metrics.cc |
@@ -47,7 +47,10 @@ static_assert(arraysize(kSchemeNames) == SCHEME_MAX + 1, |
namespace navigation_metrics { |
-void RecordMainFrameNavigation(const GURL& url, bool is_in_page) { |
+void RecordMainFrameNavigation(const GURL& url, |
+ bool is_in_page, |
+ bool is_off_the_record, |
+ bool have_already_seen_origin) { |
Scheme scheme = SCHEME_UNKNOWN; |
for (int i = 1; i < SCHEME_MAX; ++i) { |
if (url.SchemeIs(kSchemeNames[i])) { |
@@ -55,10 +58,22 @@ void RecordMainFrameNavigation(const GURL& url, bool is_in_page) { |
break; |
} |
} |
- UMA_HISTOGRAM_ENUMERATION("Navigation.MainFrameScheme", scheme, SCHEME_MAX); |
- if (!is_in_page) { |
- UMA_HISTOGRAM_ENUMERATION( |
- "Navigation.MainFrameSchemeDifferentPage", scheme, SCHEME_MAX); |
+ |
+ if (is_off_the_record) { |
+ if (!have_already_seen_origin) { |
+ UMA_HISTOGRAM_ENUMERATION("Navigation.SchemePerUniqueOriginOTR", scheme, |
+ SCHEME_MAX); |
+ } |
+ } else { |
felt
2016/04/07 02:28:04
nit: could you simplify this by returning early?
palmer
2016/04/07 23:45:43
Simplified in a different way.
|
+ if (!have_already_seen_origin) { |
+ UMA_HISTOGRAM_ENUMERATION("Navigation.SchemePerUniqueOrigin", scheme, |
+ SCHEME_MAX); |
+ } |
+ UMA_HISTOGRAM_ENUMERATION("Navigation.MainFrameScheme", scheme, SCHEME_MAX); |
felt
2016/04/07 02:28:04
do we still want to calculate MFS like normal for
palmer
2016/04/07 23:45:43
Oh, right. Yep!
|
+ if (!is_in_page) { |
+ UMA_HISTOGRAM_ENUMERATION("Navigation.MainFrameSchemeDifferentPage", |
+ scheme, SCHEME_MAX); |
+ } |
} |
} |