| Index: chrome/android/java/src/org/chromium/chrome/browser/ChromeActivitySessionTracker.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivitySessionTracker.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivitySessionTracker.java
|
| index e92b1e9fc81fe71efc0ff8f2b5a160e4658bffd2..ad1bf9998c28898ee62e49faf9e7d574b18f1001 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivitySessionTracker.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivitySessionTracker.java
|
| @@ -5,6 +5,7 @@
|
| package org.chromium.chrome.browser;
|
|
|
| import android.app.Activity;
|
| +import android.app.Application;
|
| import android.content.SharedPreferences;
|
| import android.provider.Settings;
|
| import android.text.TextUtils;
|
| @@ -12,6 +13,7 @@ import android.text.TextUtils;
|
| import org.chromium.base.ApplicationState;
|
| import org.chromium.base.ApplicationStatus;
|
| import org.chromium.base.ApplicationStatus.ApplicationStateListener;
|
| +import org.chromium.base.Callback;
|
| import org.chromium.base.ContextUtils;
|
| import org.chromium.base.LocaleUtils;
|
| import org.chromium.base.ThreadUtils;
|
| @@ -47,7 +49,7 @@ public class ChromeActivitySessionTracker {
|
| // Used to trigger variation changes (such as seed fetches) upon application foregrounding.
|
| private VariationsSession mVariationsSession;
|
|
|
| - private ChromeApplication mApplication;
|
| + private Application mApplication;
|
| private boolean mIsInitialized;
|
| private boolean mIsStarted;
|
| private boolean mIsFinishedCachingNativeFlags;
|
| @@ -67,7 +69,17 @@ public class ChromeActivitySessionTracker {
|
| * @see #getInstance()
|
| */
|
| protected ChromeActivitySessionTracker() {
|
| - mApplication = (ChromeApplication) ContextUtils.getApplicationContext();
|
| + mApplication = (Application) ContextUtils.getApplicationContext();
|
| + mVariationsSession = AppHooks.get().createVariationsSession();
|
| + }
|
| +
|
| + /**
|
| + * Asynchronously returns the value of the "restrict" URL param that the variations service
|
| + * should use for variation seed requests.
|
| + * @param callback Callback that will be called with the param value when available.
|
| + */
|
| + public void getVariationsRestrictModeValue(Callback<String> callback) {
|
| + mVariationsSession.getRestrictModeValue(mApplication, callback);
|
| }
|
|
|
| /**
|
| @@ -81,7 +93,6 @@ public class ChromeActivitySessionTracker {
|
| assert !mIsStarted;
|
|
|
| ApplicationStatus.registerApplicationStateListener(createApplicationStateListener());
|
| - mVariationsSession = AppHooks.get().createVariationsSession();
|
| }
|
|
|
| /**
|
|
|