summaryrefslogtreecommitdiff
path: root/chromium/components/ntp_snippets/content_suggestions_metrics.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/components/ntp_snippets/content_suggestions_metrics.cc')
-rw-r--r--chromium/components/ntp_snippets/content_suggestions_metrics.cc34
1 files changed, 23 insertions, 11 deletions
diff --git a/chromium/components/ntp_snippets/content_suggestions_metrics.cc b/chromium/components/ntp_snippets/content_suggestions_metrics.cc
index 348a555694e..3be66f2a0eb 100644
--- a/chromium/components/ntp_snippets/content_suggestions_metrics.cc
+++ b/chromium/components/ntp_snippets/content_suggestions_metrics.cc
@@ -23,8 +23,8 @@ const int kMaxSuggestionsPerCategory = 10;
const int kMaxSuggestionsTotal = 50;
const int kMaxCategories = 10;
-const char kHistogramCountOnNtpOpened[] =
- "NewTabPage.ContentSuggestions.CountOnNtpOpened";
+const char kHistogramCountOnNtpOpenedIfVisible[] =
+ "NewTabPage.ContentSuggestions.CountOnNtpOpenedIfVisible";
const char kHistogramSectionCountOnNtpOpened[] =
"NewTabPage.ContentSuggestions.SectionCountOnNtpOpened";
const char kHistogramShown[] = "NewTabPage.ContentSuggestions.Shown";
@@ -78,6 +78,7 @@ enum HistogramCategories {
FOREIGN_TABS,
ARTICLES,
READING_LIST,
+ BREAKING_NEWS,
// Insert new values here!
COUNT
};
@@ -107,6 +108,8 @@ HistogramCategories GetHistogramCategory(Category category) {
return HistogramCategories::ARTICLES;
case KnownCategories::READING_LIST:
return HistogramCategories::READING_LIST;
+ case KnownCategories::BREAKING_NEWS:
+ return HistogramCategories::BREAKING_NEWS;
case KnownCategories::LOCAL_CATEGORIES_COUNT:
case KnownCategories::REMOTE_CATEGORIES_OFFSET:
NOTREACHED();
@@ -137,6 +140,8 @@ std::string GetCategorySuffix(Category category) {
return "Experimental";
case HistogramCategories::READING_LIST:
return "ReadingList";
+ case HistogramCategories::BREAKING_NEWS:
+ return "BreakingNews";
case HistogramCategories::COUNT:
NOTREACHED();
break;
@@ -213,17 +218,24 @@ void RecordContentSuggestionsUsage() {
} // namespace
-void OnPageShown(
- const std::vector<std::pair<Category, int>>& suggestions_per_category,
- int visible_categories_count) {
+void OnPageShown(const std::vector<Category>& categories,
+ const std::vector<int>& suggestions_per_category,
+ const std::vector<bool>& is_category_visible) {
+ DCHECK_EQ(categories.size(), suggestions_per_category.size());
+ DCHECK_EQ(categories.size(), is_category_visible.size());
int suggestions_total = 0;
- for (const std::pair<Category, int>& item : suggestions_per_category) {
- LogCategoryHistogramPosition(kHistogramCountOnNtpOpened, item.first,
- item.second, kMaxSuggestionsPerCategory);
- suggestions_total += item.second;
+ int visible_categories_count = 0;
+ for (size_t i = 0; i < categories.size(); ++i) {
+ if (is_category_visible[i]) {
+ LogCategoryHistogramPosition(kHistogramCountOnNtpOpenedIfVisible,
+ categories[i], suggestions_per_category[i],
+ kMaxSuggestionsPerCategory);
+ suggestions_total += suggestions_per_category[i];
+ ++visible_categories_count;
+ }
}
- UMA_HISTOGRAM_EXACT_LINEAR(kHistogramCountOnNtpOpened, suggestions_total,
- kMaxSuggestionsTotal);
+ UMA_HISTOGRAM_EXACT_LINEAR(kHistogramCountOnNtpOpenedIfVisible,
+ suggestions_total, kMaxSuggestionsTotal);
UMA_HISTOGRAM_EXACT_LINEAR(kHistogramSectionCountOnNtpOpened,
visible_categories_count, kMaxCategories);
}