From 07ef69aea3176506208c274169c2ea22a18a59ec Mon Sep 17 00:00:00 2001 From: James Bursa Date: Tue, 22 Jun 2004 20:39:16 +0000 Subject: [project @ 2004-06-22 20:39:16 by bursa] Implement reload, with ^R shortcut. svn path=/import/netsurf/; revision=994 --- desktop/browser.c | 16 ++++++++++++++++ desktop/browser.h | 1 + riscos/window.c | 19 +++++++++---------- 3 files changed, 26 insertions(+), 10 deletions(-) diff --git a/desktop/browser.c b/desktop/browser.c index 10ad64ac2..2e9b2cf56 100644 --- a/desktop/browser.c +++ b/desktop/browser.c @@ -396,6 +396,22 @@ void browser_window_stop(struct browser_window *bw) } +/** + * Reload the page in a browser window. + * + * \param bw browser window + */ + +void browser_window_reload(struct browser_window *bw) +{ + if (!bw->current_content || bw->loading_content) + return; + + bw->current_content->fresh = false; + browser_window_go_post(bw, bw->current_content->url, 0, 0, false); +} + + /** * Change the status bar of a browser window. * diff --git a/desktop/browser.h b/desktop/browser.h index 9a2aab732..ea3d98a2d 100644 --- a/desktop/browser.h +++ b/desktop/browser.h @@ -90,6 +90,7 @@ void browser_window_go_post(struct browser_window *bw, const char *url, struct form_successful_control *post_multipart, bool history_add); void browser_window_stop(struct browser_window *bw); +void browser_window_reload(struct browser_window *bw); void browser_window_destroy(struct browser_window *bw); int browser_window_action(struct browser_window* bw, struct browser_action* act); diff --git a/riscos/window.c b/riscos/window.c index f93a59ab3..834b33d6a 100644 --- a/riscos/window.c +++ b/riscos/window.c @@ -669,21 +669,16 @@ void ro_gui_toolbar_click(gui_window* g, wimp_pointer* pointer) browser_window_stop(g->data.browser.bw); break; + case ICON_TOOLBAR_RELOAD: + browser_window_reload(g->data.browser.bw); + break; + case ICON_TOOLBAR_HISTORY: ro_gui_history_open(g->data.browser.bw, g->data.browser.bw->history, pointer->pos.x, pointer->pos.y); break; - case ICON_TOOLBAR_RELOAD: -/* browser_window_open_location_historical(g->data.browser.bw, - g->data.browser.bw->url -#ifdef WITH_POST - , 0, 0 -#endif - );*/ - break; - case ICON_TOOLBAR_SCALE: current_gui = g; ro_gui_menu_prepare_scale(); @@ -841,7 +836,7 @@ bool ro_gui_window_keypress(gui_window *g, int key, bool toolbar) if (!toolbar) { int c = key; /* Munge cursor keys into unused control chars */ - /* We can't map on to any of: 3,8,10,13,17,21,22,23 or 24 + /* We can't map on to any of: 3,8,10,13,17,18,21,22,23 or 24 * That leaves 1,2,4-7,11,12,14-16,18-20,25-31 and 129-159 */ if (c == 394) c = 9; /* Tab */ @@ -946,6 +941,10 @@ bool ro_gui_window_keypress(gui_window *g, int key, bool toolbar) browser_window_stop(g->data.browser.bw); return true; + case 18: /* CTRL+R */ + browser_window_reload(g->data.browser.bw); + return true; + case 17: /* CTRL+Q (Zoom out) */ current_gui = g; if (0.1 < current_gui->scale) { -- cgit v1.2.3