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

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

Issue 2337363002: Load live version when reloading an offline page on connected network (Closed)
Patch Set: Address more feedback 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/tab/Tab.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java
index cd2483c6a21fab6f8fc74a00b6e3fb54a8f00278..1cf8f2b1688a7f68f2a9b08e4b4088eb0a146eec 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java
@@ -1012,6 +1012,13 @@ public class Tab implements ViewGroup.OnHierarchyChangeListener,
if (getBlimpContents() != null) {
getBlimpContents().getNavigationController().reload();
}
+ } else if (isOfflinePage()) {
+ // If current page is an offline page, reload it with custom behavior defined in extra
+ // header respected.
+ LoadUrlParams params =
+ new LoadUrlParams(getOriginalUrl(), PageTransition.RELOAD);
+ params.setVerbatimHeaders(nativeGetOfflinePageHeaderForReload(mNativeTabAndroid));
+ loadUrl(params);
} else {
if (getWebContents() != null) getWebContents().getNavigationController().reload(true);
}
@@ -3295,6 +3302,7 @@ public class Tab implements ViewGroup.OnHierarchyChangeListener,
private native long nativeGetBookmarkId(long nativeTabAndroid, boolean onlyEditable);
private native boolean nativeIsOfflinePage(long nativeTabAndroid);
private native OfflinePageItem nativeGetOfflinePage(long nativeTabAndroid);
+ private native String nativeGetOfflinePageHeaderForReload(long nativeTabAndroid);
private native void nativeSetInterceptNavigationDelegate(long nativeTabAndroid,
InterceptNavigationDelegate delegate);
private native void nativeAttachToTabContentManager(long nativeTabAndroid,

Powered by Google App Engine
This is Rietveld 408576698