Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java |
| index 857151e7928088458671d472985fb4cf00a8727d..6bb1171dce02734e87c312a029ad13fe75ed43e8 100644 |
| --- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java |
| @@ -46,6 +46,8 @@ import org.chromium.chrome.browser.ntp.NewTabPageView.NewTabPageManager; |
| import org.chromium.chrome.browser.ntp.interests.InterestsPage; |
| import org.chromium.chrome.browser.ntp.interests.InterestsPage.InterestsClickListener; |
| import org.chromium.chrome.browser.offlinepages.OfflinePageBridge; |
| +import org.chromium.chrome.browser.offlinepages.OfflinePageItem; |
| +import org.chromium.chrome.browser.offlinepages.OfflinePageUtils; |
| import org.chromium.chrome.browser.preferences.DocumentModeManager; |
| import org.chromium.chrome.browser.preferences.DocumentModePreference; |
| import org.chromium.chrome.browser.preferences.PrefServiceBridge; |
| @@ -327,6 +329,17 @@ public class NewTabPage |
| @Override |
| public void open(String url) { |
| + if (!OfflinePageUtils.isConnected(mNewTabPageView.getContext()) && !mIsDestroyed |
|
newt (away)
2016/01/12 20:58:55
This seems like the wrong layer (too high) to be a
Marc Treib
2016/01/13 09:38:19
I don't think we want to do the automatic indirect
newt (away)
2016/01/13 22:05:12
Ok, I'll buy that distinction between navigation f
Marc Treib
2016/01/14 10:09:17
Done.
|
| + && OfflinePageBridge.isEnabled()) { |
| + if (mOfflinePageBridge == null) { |
| + mOfflinePageBridge = new OfflinePageBridge(mProfile); |
| + } |
| + OfflinePageItem offlineItem = mOfflinePageBridge.getPageByOnlineURL(url); |
| + if (offlineItem != null) { |
| + mOfflinePageBridge.markPageAccessed(offlineItem.getBookmarkId()); |
| + url = offlineItem.getOfflineUrl(); |
| + } |
| + } |
| mTab.loadUrl(new LoadUrlParams(url, PageTransition.AUTO_BOOKMARK)); |
| } |
| @@ -446,7 +459,7 @@ public class NewTabPage |
| public boolean isOfflineAvailable(String pageUrl) { |
| if (mIsDestroyed || !OfflinePageBridge.isEnabled()) return false; |
| if (mOfflinePageBridge == null) mOfflinePageBridge = new OfflinePageBridge(mProfile); |
| - return mOfflinePageBridge.getPageByOnlineURL(pageUrl) != null; |
| + return mOfflinePageBridge.getOfflineUrlForOnlineUrl(pageUrl) != null; |
| } |
| @Override |