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

Unified Diff: chrome/browser/android/offline_pages/offline_page_tab_helper.cc

Issue 2337363002: Load live version when reloading an offline page on connected network (Closed)
Patch Set: 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/browser/android/offline_pages/offline_page_tab_helper.cc
diff --git a/chrome/browser/android/offline_pages/offline_page_tab_helper.cc b/chrome/browser/android/offline_pages/offline_page_tab_helper.cc
index 79cb4183475e93bb07135bb1cc56dc2d9b364a88..7e78fb6051153b8ea32cb8010ce2d4e5e1e01013 100644
--- a/chrome/browser/android/offline_pages/offline_page_tab_helper.cc
+++ b/chrome/browser/android/offline_pages/offline_page_tab_helper.cc
@@ -43,6 +43,7 @@ void OfflinePageTabHelper::DidStartNavigation(
// Since this is a new navigation, we will reset the cached offline page,
offline_page_ = nullptr;
+ offline_header_.Clear();
Dmitry Titov 2016/09/16 21:37:23 after rebase, you will need to do figure out when
jianli 2016/09/16 23:08:48 Yes. I think we should also avoid clearing is_offl
is_offline_preview_ = false;
reloading_url_on_net_error_ = false;
@@ -113,17 +114,18 @@ void OfflinePageTabHelper::SelectPageForOnlineURLDone(
// Reloads the page with extra header set to force loading the offline page.
content::NavigationController::LoadURLParams load_params(offline_page->url);
load_params.transition_type = ui::PAGE_TRANSITION_RELOAD;
- load_params.extra_headers = kOfflinePageHeader;
- load_params.extra_headers += ":";
- load_params.extra_headers += kOfflinePageHeaderReasonKey;
- load_params.extra_headers += "=";
- load_params.extra_headers += kOfflinePageHeaderReasonValueDueToNetError;
+ OfflinePageHeader offline_header;
+ offline_header.reason = OfflinePageHeader::Reason::NET_ERROR;
+ load_params.extra_headers = offline_header.ToFullHeaderString();
web_contents()->GetController().LoadURLWithParams(load_params);
}
-void OfflinePageTabHelper::SetOfflinePage(const OfflinePageItem& offline_page,
- bool is_offline_preview) {
+void OfflinePageTabHelper::SetOfflinePage(
+ const OfflinePageItem& offline_page,
+ const OfflinePageHeader& offline_header,
+ bool is_offline_preview) {
offline_page_ = base::MakeUnique<OfflinePageItem>(offline_page);
+ offline_header_ = offline_header;
is_offline_preview_ = is_offline_preview;
}

Powered by Google App Engine
This is Rietveld 408576698