summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/render_view.cc
diff options
context:
space:
mode:
authorevan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-18 13:03:29 +0000
committerevan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-18 13:03:29 +0000
commitecbf10d164fd0a5e622a466044400e0feca4aa1d (patch)
tree66ddfb9eddce7baedf463c5cb5db81204b80f43a /chrome/renderer/render_view.cc
parent438866e12d2b341e79e6435e8b4f82625a4b034c (diff)
downloadchromium_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.cc19
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,