diff options
author | evan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-18 13:03:29 +0000 |
---|---|---|
committer | evan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-18 13:03:29 +0000 |
commit | ecbf10d164fd0a5e622a466044400e0feca4aa1d (patch) | |
tree | 66ddfb9eddce7baedf463c5cb5db81204b80f43a /chrome/renderer/render_view.cc | |
parent | 438866e12d2b341e79e6435e8b4f82625a4b034c (diff) | |
download | chromium_src-ecbf10d164fd0a5e622a466044400e0feca4aa1d.zip chromium_src-ecbf10d164fd0a5e622a466044400e0feca4aa1d.tar.gz chromium_src-ecbf10d164fd0a5e622a466044400e0feca4aa1d.tar.bz2 |
Chrome-side change of WebKit API change to expose a "reload all" flag.
Doesn't hook up the UI for it yet, just adds the appropriate API.
Review URL: http://codereview.chromium.org/605026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39356 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/render_view.cc')
-rw-r--r-- | chrome/renderer/render_view.cc | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/chrome/renderer/render_view.cc b/chrome/renderer/render_view.cc index aab3445..6c287d0 100644 --- a/chrome/renderer/render_view.cc +++ b/chrome/renderer/render_view.cc @@ -841,7 +841,9 @@ void RenderView::OnNavigate(const ViewMsg_Navigate_Params& params) { AboutHandler::MaybeHandle(params.url); - bool is_reload = (params.navigation_type == ViewMsg_Navigate_Params::RELOAD); + bool is_reload = + params.navigation_type == ViewMsg_Navigate_Params::RELOAD || + params.navigation_type == ViewMsg_Navigate_Params::RELOAD_IGNORING_CACHE; WebFrame* main_frame = webview()->mainFrame(); if (is_reload && main_frame->currentHistoryItem().isNull()) { @@ -878,7 +880,9 @@ void RenderView::OnNavigate(const ViewMsg_Navigate_Params& params) { if (is_reload) { if (navigation_state) navigation_state->set_load_type(NavigationState::RELOAD); - main_frame->reload(); + bool ignore_cache = (params.navigation_type == + ViewMsg_Navigate_Params::RELOAD_IGNORING_CACHE); + main_frame->reload(ignore_cache); } else if (!params.state.empty()) { // We must know the page ID of the page we are navigating back to. DCHECK_NE(params.page_id, -1); @@ -916,10 +920,15 @@ void RenderView::OnStop() { webview()->mainFrame()->stopLoading(); } -// Reload current focused frame +// Reload current focused frame. +// E.g. called by right-clicking on the frame and picking "reload this frame". void RenderView::OnReloadFrame() { - if (webview() && webview()->focusedFrame()) - webview()->focusedFrame()->reload(); + if (webview() && webview()->focusedFrame()) { + // We always obey the cache (ignore_cache=false) here. + // TODO(evanm): perhaps we could allow shift-clicking the menu item to do + // a cache-ignoring reload of the frame. + webview()->focusedFrame()->reload(false); + } } void RenderView::OnLoadAlternateHTMLText(const std::string& html, |