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 1d9529ad033a817fac667a8fde02be29a26fe5ac..1bbb7cab376c1d4a864ace5305055caea9c31a8e 100644 |
--- a/chrome/renderer/net/net_error_helper.cc |
+++ b/chrome/renderer/net/net_error_helper.cc |
@@ -16,7 +16,7 @@ |
#include "chrome/common/localized_error.h" |
#include "chrome/common/net/net_error_info.h" |
#include "chrome/common/render_messages.h" |
-#include "chrome/renderer/net/error_cache_load.h" |
+#include "chrome/renderer/net/error_page_helper_functions.h" |
#include "content/public/common/content_client.h" |
#include "content/public/common/url_constants.h" |
#include "content/public/renderer/content_renderer_client.h" |
@@ -95,6 +95,18 @@ NetErrorHelper::~NetErrorHelper() { |
RenderThread::Get()->RemoveObserver(this); |
} |
+void NetErrorHelper::ReloadButtonPressed() { |
+ core_.ExecuteButtonPress(NetErrorHelperCore::RELOAD_BUTTON); |
+} |
+ |
+void NetErrorHelper::LoadStaleButtonPressed() { |
+ core_.ExecuteButtonPress(NetErrorHelperCore::LOAD_STALE_BUTTON); |
+} |
+ |
+void NetErrorHelper::MoreButtonPressed() { |
+ core_.ExecuteButtonPress(NetErrorHelperCore::MORE_BUTTON); |
+} |
+ |
void NetErrorHelper::DidStartProvisionalLoad() { |
blink::WebFrame* frame = render_frame()->GetWebFrame(); |
core_.OnStartLoad(GetFrameType(frame), GetLoadingPageType(frame)); |
@@ -148,6 +160,8 @@ void NetErrorHelper::GenerateLocalizedErrorPage( |
const blink::WebURLError& error, |
bool is_failed_post, |
scoped_ptr<LocalizedError::ErrorPageParams> params, |
+ bool* reload_button_shown, |
+ bool* load_stale_button_shown, |
std::string* error_html) const { |
error_html->clear(); |
@@ -165,6 +179,9 @@ void NetErrorHelper::GenerateLocalizedErrorPage( |
render_frame()->GetRenderView()-> |
GetAcceptLanguages(), |
params.Pass(), &error_strings); |
+ *reload_button_shown = error_strings.Get("reloadButton", NULL); |
+ *load_stale_button_shown = error_strings.Get("staleLoadButton", NULL); |
+ |
// "t" is the id of the template's root node. |
*error_html = webui::GetTemplatesHtml(template_html, &error_strings, "t"); |
} |
@@ -179,8 +196,8 @@ void NetErrorHelper::LoadErrorPageInMainFrame(const std::string& html, |
frame->loadHTMLString(html, GURL(kUnreachableWebDataURL), failed_url, true); |
} |
-void NetErrorHelper::EnableStaleLoadBindings(const GURL& page_url) { |
- ErrorCacheLoad::Install(render_frame(), page_url); |
+void NetErrorHelper::EnablePageHelperFunctions(const GURL& page_url) { |
+ ErrorPageHelperFunctions::Install(render_frame(), page_url); |
} |
void NetErrorHelper::UpdateErrorPage(const blink::WebURLError& error, |
@@ -243,6 +260,16 @@ void NetErrorHelper::ReloadPage() { |
render_frame()->GetWebFrame()->reload(false); |
} |
+void NetErrorHelper::LoadPageFromCache(const GURL& page_url) { |
+ blink::WebFrame* web_frame = render_frame()->GetWebFrame(); |
+ DCHECK(!EqualsASCII(web_frame->dataSource()->request().httpMethod(), "POST")); |
+ |
+ blink::WebURLRequest request(page_url); |
+ request.setCachePolicy(blink::WebURLRequest::ReturnCacheDataDontLoad); |
+ |
+ web_frame->loadRequest(request); |
+} |
+ |
void NetErrorHelper::OnNetErrorInfo(int status_num) { |
DCHECK(status_num >= 0 && status_num < chrome_common_net::DNS_PROBE_MAX); |