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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardsFieldTrial.java

Issue 2312253003: Add Field Trial factor to NewTabPageLayout calculations. (Closed)
Patch Set: Deduplicate field trial name. Created 4 years, 3 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/cards/CardsFieldTrial.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardsFieldTrial.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardsFieldTrial.java
new file mode 100644
index 0000000000000000000000000000000000000000..96dcd7a0f65a002054a14cd1a2b3f2c1b7626ad7
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardsFieldTrial.java
@@ -0,0 +1,48 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.ntp.cards;
+
+import android.text.TextUtils;
+
+import org.chromium.base.CommandLine;
+import org.chromium.base.Log;
+import org.chromium.chrome.browser.ntp.NewTabPage;
+import org.chromium.components.variations.VariationsAssociatedData;
+
+/**
+ * Provides easy access to data for field trials to do with the Cards UI.
+ */
+public final class CardsFieldTrial {
+ private static final String TAG = "CardFinchExperiments";
+
+ // TODO(peconn): Move NewTabPage.FIELD_TRIAL_NAME and all uses into this class.
+ private static final String FIRST_CARD_OFFSET = "first_card_offset";
+
+ private CardsFieldTrial() {
+ }
+
+ /**
+ * Provides the value of the field trial to offset the peeking card (can be overridden
+ * with a command line flag). It will return 0 if there is no such field trial.
+ */
+ public static int getFirstCardOffsetDp() {
+ String value = CommandLine.getInstance().getSwitchValue(FIRST_CARD_OFFSET);
+
+ if (TextUtils.isEmpty(value)) {
+ value = VariationsAssociatedData.getVariationParamValue(NewTabPage.FIELD_TRIAL_NAME,
+ FIRST_CARD_OFFSET);
+ }
+
+ if (!TextUtils.isEmpty(value)) {
+ try {
+ return Integer.parseInt(value);
+ } catch (NumberFormatException ex) {
+ Log.w(TAG, "Cannot parse card offset experiment value, %s.", value);
+ }
+ }
+
+ return 0;
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698