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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/customtabs/ClientManager.java

Issue 1767243002: Update prerender policy for custom tabs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: mmenke@'s comments Created 4 years, 9 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/customtabs/ClientManager.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/ClientManager.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/ClientManager.java
index 5624ca48b2a96f94ba86fa9042fe5946de87a459..4cadc39a6bc38bf474a05583c9bb997b9b00381e 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/ClientManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/ClientManager.java
@@ -54,6 +54,7 @@ class ClientManager {
public final IBinder.DeathRecipient deathRecipient;
public boolean mIgnoreFragments;
private boolean mShouldHideDomain;
+ private boolean mShouldPrerenderOnCellular;
private ServiceConnection mKeepAliveConnection;
private String mPredictedUrl;
private long mLastMayLaunchUrlTimestamp;
@@ -270,7 +271,23 @@ class ClientManager {
/** Sets whether the fragment should be ignored for prerender matching. */
public synchronized void setIgnoreFragmentsForSession(IBinder session, boolean value) {
SessionParams params = mSessionParams.get(session);
- params.mIgnoreFragments = value;
+ if (params != null) params.mIgnoreFragments = value;
+ }
+
+ /**
+ * @return Whether prerender should be turned on for cellular networks for given session.
+ */
+ public synchronized boolean shouldPrerenderOnCellularForSession(IBinder session) {
+ SessionParams params = mSessionParams.get(session);
+ return params != null ? params.mShouldPrerenderOnCellular : false;
+ }
+
+ /**
+ * Sets whether prerender should be turned on for mobile networks for given session.
+ */
+ public synchronized void setPrerenderCellularForSession(IBinder session, boolean prerender) {
+ SessionParams params = mSessionParams.get(session);
+ if (params != null) params.mShouldPrerenderOnCellular = prerender;
}
/** Tries to bind to a client to keep it alive, and returns true for success. */

Powered by Google App Engine
This is Rietveld 408576698