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

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

Issue 2086483004: Remove ChromePrerenderService, keeping only its skeleton behind. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Explain why the service is staying. Created 4 years, 6 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/WarmupManager.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java b/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java
index 60a4440cc2d2512e91cf9821efe55bef695184e1..1ed116eb2b8235e193a87867445b20610e01cfb5 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java
@@ -19,9 +19,7 @@ import org.chromium.base.ThreadUtils;
import org.chromium.base.TraceEvent;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings;
-import org.chromium.chrome.browser.prerender.ExternalPrerenderHandler;
import org.chromium.chrome.browser.profiles.Profile;
-import org.chromium.content_public.browser.WebContents;
import java.net.InetAddress;
import java.net.MalformedURLException;
@@ -46,12 +44,8 @@ public final class WarmupManager {
private final Set<String> mDnsRequestsInFlight;
private final Map<String, Profile> mPendingPreconnectWithProfile;
- private boolean mPrerenderIsAllowed;
- private WebContents mPrerenderedWebContents;
- private boolean mPrerendered;
private int mToolbarContainerId;
private ViewGroup mMainView;
- private ExternalPrerenderHandler mExternalPrerenderHandler;
/**
* @return The singleton instance for the WarmupManager, creating one if necessary.
@@ -63,83 +57,11 @@ public final class WarmupManager {
}
private WarmupManager() {
- mPrerenderIsAllowed = true;
mDnsRequestsInFlight = new HashSet<String>();
mPendingPreconnectWithProfile = new HashMap<String, Profile>();
}
/**
- * Disallow prerendering from now until the browser process death.
- */
- public void disallowPrerendering() {
- ThreadUtils.assertOnUiThread();
- mPrerenderIsAllowed = false;
- cancelCurrentPrerender();
- mExternalPrerenderHandler = null;
- }
-
- /**
- * Check whether prerender manager has the given url prerendered. This also works with
- * redirected urls.
- *
- * Uses the last used profile.
- *
- * @param url The url to check.
- * @return Whether the given url has been prerendered.
- */
- public boolean hasPrerenderedUrl(String url) {
- ThreadUtils.assertOnUiThread();
- if (!mPrerenderIsAllowed) return false;
- return hasAnyPrerenderedUrl() && ExternalPrerenderHandler.hasPrerenderedUrl(
- Profile.getLastUsedProfile(), url, mPrerenderedWebContents);
- }
-
- /**
- * @return Whether any url has been prerendered.
- */
- public boolean hasAnyPrerenderedUrl() {
- ThreadUtils.assertOnUiThread();
- if (!mPrerenderIsAllowed) return false;
- return mPrerendered;
- }
-
- /**
- * @return The prerendered {@link WebContents} clearing out the reference WarmupManager owns.
- */
- public WebContents takePrerenderedWebContents() {
- ThreadUtils.assertOnUiThread();
- if (!mPrerenderIsAllowed) return null;
- WebContents prerenderedWebContents = mPrerenderedWebContents;
- assert (mPrerenderedWebContents != null);
- mPrerenderedWebContents = null;
- return prerenderedWebContents;
- }
-
- /**
- * Prerenders the given url using the prerender_manager.
- *
- * Uses the last used profile.
- *
- * @param url The url to prerender.
- * @param referrer The referrer url to be used while prerendering
- * @param widthPix The width in pixels to which the page should be prerendered.
- * @param heightPix The height in pixels to which the page should be prerendered.
- */
- public void prerenderUrl(final String url, final String referrer,
- final int widthPix, final int heightPix) {
- ThreadUtils.assertOnUiThread();
- if (!mPrerenderIsAllowed) return;
- clearWebContentsIfNecessary();
- if (mExternalPrerenderHandler == null) {
- mExternalPrerenderHandler = new ExternalPrerenderHandler();
- }
-
- mPrerenderedWebContents = mExternalPrerenderHandler.addPrerender(
- Profile.getLastUsedProfile(), url, referrer, widthPix, heightPix, false);
- if (mPrerenderedWebContents != null) mPrerendered = true;
- }
-
- /**
* Inflates and constructs the view hierarchy that the app will use.
* @param baseContext The base context to use for creating the ContextWrapper.
* @param toolbarContainerId Id of the toolbar container.
@@ -186,29 +108,6 @@ public final class WarmupManager {
}
/**
- * Destroys the native WebContents instance the WarmupManager currently holds onto.
- */
- public void clearWebContentsIfNecessary() {
- ThreadUtils.assertOnUiThread();
- mPrerendered = false;
- if (mPrerenderedWebContents == null) return;
-
- mPrerenderedWebContents.destroy();
- mPrerenderedWebContents = null;
- }
-
- /**
- * Cancel the current prerender.
- */
- public void cancelCurrentPrerender() {
- ThreadUtils.assertOnUiThread();
- clearWebContentsIfNecessary();
- if (mExternalPrerenderHandler == null) return;
-
- mExternalPrerenderHandler.cancelCurrentPrerender();
- }
-
- /**
* @return Whether the view hierarchy has been prebuilt with a given toolbar ID. If there is no
* match, clears the inflated view.
*/

Powered by Google App Engine
This is Rietveld 408576698