| Index: chrome/renderer/net/net_error_helper.cc
|
| diff --git a/chrome/renderer/net/net_error_helper.cc b/chrome/renderer/net/net_error_helper.cc
|
| index 492c9d31b541ffb4adc1c853f4b01b92aaf74ca7..5ec376e887bb5b54725c571c9a56117e0bbd80f8 100644
|
| --- a/chrome/renderer/net/net_error_helper.cc
|
| +++ b/chrome/renderer/net/net_error_helper.cc
|
| @@ -146,7 +146,7 @@ bool NetErrorHelper::OnMessageReceived(const IPC::Message& message) {
|
| IPC_MESSAGE_HANDLER(ChromeViewMsg_SetNavigationCorrectionInfo,
|
| OnSetNavigationCorrectionInfo);
|
| #if defined(OS_ANDROID)
|
| - IPC_MESSAGE_HANDLER(ChromeViewMsg_SetHasOfflinePages, OnSetHasOfflinePages)
|
| + IPC_MESSAGE_HANDLER(ChromeViewMsg_SetOfflinePageInfo, OnSetOfflinePageInfo)
|
| #endif
|
| IPC_MESSAGE_UNHANDLED(handled = false)
|
| IPC_END_MESSAGE_MAP()
|
| @@ -174,12 +174,13 @@ void NetErrorHelper::GenerateLocalizedErrorPage(
|
| const blink::WebURLError& error,
|
| bool is_failed_post,
|
| bool can_show_network_diagnostics_dialog,
|
| - bool has_offline_pages,
|
| + int offline_page_status,
|
| scoped_ptr<ErrorPageParams> params,
|
| bool* reload_button_shown,
|
| bool* show_saved_copy_button_shown,
|
| bool* show_cached_copy_button_shown,
|
| - bool* show_saved_pages_button_shown,
|
| + bool* show_offline_pages_button_shown,
|
| + bool* show_offline_copy_button_shown,
|
| std::string* error_html) const {
|
| error_html->clear();
|
|
|
| @@ -190,22 +191,27 @@ void NetErrorHelper::GenerateLocalizedErrorPage(
|
| NOTREACHED() << "unable to load template.";
|
| } else {
|
| base::DictionaryValue error_strings;
|
| - LocalizedError::GetStrings(error.reason, error.domain.utf8(),
|
| - error.unreachableURL, is_failed_post,
|
| - error.staleCopyInCache,
|
| - can_show_network_diagnostics_dialog,
|
| - has_offline_pages,
|
| - RenderThread::Get()->GetLocale(),
|
| - render_frame()->GetRenderView()->
|
| - GetAcceptLanguages(),
|
| - params.Pass(), &error_strings);
|
| + LocalizedError::GetStrings(
|
| + error.reason,
|
| + error.domain.utf8(),
|
| + error.unreachableURL,
|
| + is_failed_post,
|
| + error.staleCopyInCache,
|
| + can_show_network_diagnostics_dialog,
|
| + static_cast<OfflinePageStatus>(offline_page_status),
|
| + RenderThread::Get()->GetLocale(),
|
| + render_frame()->GetRenderView()->GetAcceptLanguages(),
|
| + params.Pass(),
|
| + &error_strings);
|
| *reload_button_shown = error_strings.Get("reloadButton", nullptr);
|
| *show_saved_copy_button_shown =
|
| error_strings.Get("showSavedCopyButton", nullptr);
|
| *show_cached_copy_button_shown =
|
| error_strings.Get("cacheButton", nullptr);
|
| - *show_saved_pages_button_shown =
|
| - error_strings.Get("showSavedPagesButton", nullptr);
|
| + *show_offline_pages_button_shown =
|
| + error_strings.Get("showOfflinePagesButton", nullptr);
|
| + *show_offline_copy_button_shown =
|
| + error_strings.Get("showOfflineCopyButton", nullptr);
|
| // "t" is the id of the template's root node.
|
| *error_html = webui::GetTemplatesHtml(template_html, &error_strings, "t");
|
| }
|
| @@ -225,20 +231,20 @@ void NetErrorHelper::EnablePageHelperFunctions() {
|
| void NetErrorHelper::UpdateErrorPage(const blink::WebURLError& error,
|
| bool is_failed_post,
|
| bool can_show_network_diagnostics_dialog,
|
| - bool has_offline_pages) {
|
| + int offline_page_status) {
|
| base::DictionaryValue error_strings;
|
| - LocalizedError::GetStrings(error.reason,
|
| - error.domain.utf8(),
|
| - error.unreachableURL,
|
| - is_failed_post,
|
| - error.staleCopyInCache,
|
| - can_show_network_diagnostics_dialog,
|
| - has_offline_pages,
|
| - RenderThread::Get()->GetLocale(),
|
| - render_frame()->GetRenderView()->
|
| - GetAcceptLanguages(),
|
| - scoped_ptr<ErrorPageParams>(),
|
| - &error_strings);
|
| + LocalizedError::GetStrings(
|
| + error.reason,
|
| + error.domain.utf8(),
|
| + error.unreachableURL,
|
| + is_failed_post,
|
| + error.staleCopyInCache,
|
| + can_show_network_diagnostics_dialog,
|
| + static_cast<OfflinePageStatus>(offline_page_status),
|
| + RenderThread::Get()->GetLocale(),
|
| + render_frame()->GetRenderView()->GetAcceptLanguages(),
|
| + scoped_ptr<ErrorPageParams>(),
|
| + &error_strings);
|
|
|
| std::string json;
|
| JSONWriter::Write(error_strings, &json);
|
| @@ -327,6 +333,13 @@ void NetErrorHelper::ShowOfflinePages() {
|
| #endif
|
| }
|
|
|
| +void NetErrorHelper::LoadOfflineCopy(const GURL& page_url) {
|
| +#if defined(OS_ANDROID)
|
| + render_frame()->Send(new ChromeViewHostMsg_LoadOfflineCopy(
|
| + render_frame()->GetRoutingID(), page_url));
|
| +#endif
|
| +}
|
| +
|
| void NetErrorHelper::OnNetErrorInfo(int status_num) {
|
| DCHECK(status_num >= 0 && status_num < error_page::DNS_PROBE_MAX);
|
|
|
| @@ -372,7 +385,7 @@ void NetErrorHelper::OnTrackingRequestComplete(
|
| }
|
|
|
| #if defined(OS_ANDROID)
|
| -void NetErrorHelper::OnSetHasOfflinePages(bool has_offline_pages) {
|
| - core_->OnSetHasOfflinePages(has_offline_pages);
|
| +void NetErrorHelper::OnSetOfflinePageInfo(int offline_page_status) {
|
| + core_->OnSetOfflinePageInfo(offline_page_status);
|
| }
|
| #endif
|
|
|