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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticle.java

Issue 2006203002: Fix that NewTabPage.Snippets.CardShown was recorded too early/often. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: After code review #2 Created 4 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/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticle.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticle.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticle.java
index d8f7a29f1e422ed1007dc88ff5a4f21ab9e5aa57..49a9dc04421ab8cde90255f83a07545a60e84b4a 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticle.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticle.java
@@ -5,6 +5,7 @@ package org.chromium.chrome.browser.ntp.snippets;
import android.graphics.Bitmap;
+import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.browser.ntp.cards.NewTabPageListItem;
/**
@@ -24,6 +25,9 @@ public class SnippetArticle implements NewTabPageListItem {
/** Bitmap of the thumbnail, fetched lazily, when the RecyclerView wants to show the snippet. */
private Bitmap mThumbnailBitmap;
+ /** Stores whether impression of this article has been tracked already. */
+ private boolean mImpressionTracked;
+
/**
* Creates a SnippetArticle object that will hold the data
* @param title the title of the article
@@ -76,4 +80,20 @@ public class SnippetArticle implements NewTabPageListItem {
public void setThumbnailBitmap(Bitmap bitmap) {
mThumbnailBitmap = bitmap;
}
+
+ /** Tracks impression of this NTP snippet. */
+ public void trackImpression() {
+ // Track UMA only upon the first impression per life-time of this object.
+ if (mImpressionTracked) return;
+
+ RecordHistogram.recordSparseSlowlyHistogram("NewTabPage.Snippets.CardShown", mPosition);
+ mImpressionTracked = true;
+ }
+
+ /**
+ * Returns whether impression of this SnippetArticle has already been tracked.
+ */
+ public boolean impressionTracked() {
+ return mImpressionTracked;
+ }
}

Powered by Google App Engine
This is Rietveld 408576698