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

Unified Diff: chrome/browser/net/net_error_tab_helper.cc

Issue 1410343007: Add "SHOW ALL SAVED PAGES" button to offline error page (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix after rebase Created 5 years, 1 month 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
« no previous file with comments | « chrome/browser/net/net_error_tab_helper.h ('k') | chrome/common/localized_error.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/net/net_error_tab_helper.cc
diff --git a/chrome/browser/net/net_error_tab_helper.cc b/chrome/browser/net/net_error_tab_helper.cc
index 8e325f9be01b1103ffc5f6c8a10b0606006b6049..a0e73cf6cb1e2c50084dc6ce1a1817860884b2fe 100644
--- a/chrome/browser/net/net_error_tab_helper.cc
+++ b/chrome/browser/net/net_error_tab_helper.cc
@@ -22,6 +22,10 @@
#include "net/base/net_errors.h"
#include "url/gurl.h"
+#if defined(OS_ANDROID)
+#include "chrome/browser/android/tab_android.h"
+#endif
+
using content::BrowserContext;
using content::BrowserThread;
using content::WebContents;
@@ -118,6 +122,10 @@ void NetErrorTabHelper::DidStartProvisionalLoadForFrame(
return;
is_error_page_ = is_error_page;
+
+#if defined(OS_ANDROID)
+ SetHasOfflinePages(render_frame_host);
+#endif
}
void NetErrorTabHelper::DidCommitProvisionalLoadForFrame(
@@ -167,6 +175,9 @@ bool NetErrorTabHelper::OnMessageReceived(
IPC_BEGIN_MESSAGE_MAP(NetErrorTabHelper, message)
IPC_MESSAGE_HANDLER(ChromeViewHostMsg_RunNetworkDiagnostics,
RunNetworkDiagnostics)
+#if defined(OS_ANDROID)
+ IPC_MESSAGE_HANDLER(ChromeViewHostMsg_ShowOfflinePages, ShowOfflinePages)
+#endif
IPC_MESSAGE_UNHANDLED(handled = false)
IPC_END_MESSAGE_MAP()
@@ -274,4 +285,24 @@ void NetErrorTabHelper::RunNetworkDiagnosticsHelper(
ShowNetworkDiagnosticsDialog(web_contents(), sanitized_url);
}
+#if defined(OS_ANDROID)
+void NetErrorTabHelper::SetHasOfflinePages(
+ content::RenderFrameHost* render_frame_host) {
+ DCHECK(web_contents());
+ TabAndroid* tab = TabAndroid::FromWebContents(web_contents());
+ bool has_offline_pages = tab && tab->HasOfflinePages();
+ render_frame_host->Send(
+ new ChromeViewMsg_SetHasOfflinePages(
+ render_frame_host->GetRoutingID(),
+ has_offline_pages));
+}
+
+void NetErrorTabHelper::ShowOfflinePages() {
+ DCHECK(web_contents());
+ TabAndroid* tab = TabAndroid::FromWebContents(web_contents());
+ if (tab)
+ tab->ShowOfflinePages();
+}
+#endif
+
} // namespace chrome_browser_net
« no previous file with comments | « chrome/browser/net/net_error_tab_helper.h ('k') | chrome/common/localized_error.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698