From 49ce807e3cebf9f36fc908d7b7c0bfe00ce32e2c Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Fri, 1 Oct 2004 21:31:55 +0000 Subject: [project @ 2004-10-01 21:31:55 by jmb] A somewhat better implementation of referrers which no longer sends the referer if the URL schemes don't match. Things to do: 1) Preservation of referer across redirects (see comment in browser.c:284) 2) GUI templates/code for configuration of referer sending (simple on/off toggle only) 3) Make referer sending when fetching objects/stylesheets for a page pay attention to option_send_referer? 4) Handle the case where the referer is in the form of http://moo:foo@mysite.com/ (ie the login details embedded in the referer - not good). svn path=/import/netsurf/; revision=1297 --- riscos/401login.c | 4 ++-- riscos/dialog.c | 2 +- riscos/history.c | 2 +- riscos/hotlist.c | 4 ++-- riscos/menus.c | 8 ++++---- riscos/plugin.c | 4 ++-- riscos/uri.c | 2 +- riscos/url_protocol.c | 2 +- riscos/window.c | 12 ++++++------ 9 files changed, 20 insertions(+), 20 deletions(-) (limited to 'riscos') diff --git a/riscos/401login.c b/riscos/401login.c index 0832d594f..b2f3cf4f0 100644 --- a/riscos/401login.c +++ b/riscos/401login.c @@ -99,7 +99,7 @@ bool ro_gui_401login_keypress(wimp_key *key) case wimp_KEY_RETURN: get_unamepwd(); ro_gui_dialog_close(dialog_401li); - browser_window_go(bwin, url, false); + browser_window_go(bwin, url, 0); return true; } @@ -118,7 +118,7 @@ void ro_gui_401login_click(wimp_pointer *pointer) case ICON_401LOGIN_LOGIN: get_unamepwd(); ro_gui_dialog_close(dialog_401li); - browser_window_go(bwin, url, false); + browser_window_go(bwin, url, 0); break; case ICON_401LOGIN_CANCEL: ro_gui_dialog_close(dialog_401li); diff --git a/riscos/dialog.c b/riscos/dialog.c index e3e40eb48..467fe83c8 100644 --- a/riscos/dialog.c +++ b/riscos/dialog.c @@ -854,7 +854,7 @@ void ro_gui_dialog_click_config_th(wimp_pointer *pointer) case ICON_CONFIG_TH_GET: browser_window_create( "http://netsurf.sourceforge.net/themes/", - NULL); + NULL, 0); break; } } diff --git a/riscos/history.c b/riscos/history.c index 628409db5..8a11f4cb7 100644 --- a/riscos/history.c +++ b/riscos/history.c @@ -663,7 +663,7 @@ void history_go(struct browser_window *bw, struct history_entry *entry) else url = entry->url; - browser_window_go_post(bw, url, 0, 0, false, false); + browser_window_go_post(bw, url, 0, 0, false, 0); if (entry->frag_id) free(url); diff --git a/riscos/hotlist.c b/riscos/hotlist.c index fad751306..3b787a536 100644 --- a/riscos/hotlist.c +++ b/riscos/hotlist.c @@ -1612,7 +1612,7 @@ void ro_gui_hotlist_click(wimp_pointer *pointer) { */ if (((buttons == wimp_DOUBLE_SELECT) || (buttons == wimp_DOUBLE_ADJUST)) && (entry->children == -1)) { - browser_window_create(entry->url, NULL); + browser_window_create(entry->url, NULL, 0); if (buttons == wimp_DOUBLE_SELECT) { ro_gui_hotlist_selection_state(root.child_entry, false, true); @@ -1872,7 +1872,7 @@ int ro_gui_hotlist_selection_count(struct hotlist_entry *entry, bool folders) { void ro_gui_hotlist_launch_selection(struct hotlist_entry *entry) { if (!entry) return; while (entry) { - if ((entry->selected) && (entry->url)) browser_window_create(entry->url, NULL); + if ((entry->selected) && (entry->url)) browser_window_create(entry->url, NULL, 0); if (entry->child_entry) ro_gui_hotlist_launch_selection(entry->child_entry); entry = entry->next_entry; } diff --git a/riscos/menus.c b/riscos/menus.c index 616f48782..eb368e7de 100644 --- a/riscos/menus.c +++ b/riscos/menus.c @@ -770,7 +770,7 @@ void ro_gui_menu_selection(wimp_selection *selection) case 5: /* Print */ break; case 6: /* New window */ - browser_window_create(current_gui->bw->current_content->url, current_gui->bw); + browser_window_create(current_gui->bw->current_content->url, current_gui->bw, 0); break; case 7: /* Page source */ ro_gui_view_source(c); @@ -817,12 +817,12 @@ void ro_gui_menu_selection(wimp_selection *selection) switch (selection->items[1]) { case 0: /* Home */ if (option_homepage_url && option_homepage_url[0]) { - browser_window_go_post(current_gui->bw, option_homepage_url, 0, 0, true, false); + browser_window_go_post(current_gui->bw, option_homepage_url, 0, 0, true, 0); } else { snprintf(url, sizeof url, "file://Docs/intro_%s", option_language); - browser_window_go_post(current_gui->bw, url, 0, 0, true, false); + browser_window_go_post(current_gui->bw, url, 0, 0, true, 0); } break; case 1: /* Back */ @@ -967,7 +967,7 @@ void ro_gui_menu_selection(wimp_selection *selection) break; case 3: /* About NetSurf */ browser_window_create("file:/" - "/Docs/about", 0); + "/Docs/about", 0, 0); break; case 4: /* Interactive help */ xos_cli("Filer_Run Resources:$.Apps.!Help"); diff --git a/riscos/plugin.c b/riscos/plugin.c index 76213d1f5..8b04ce2d0 100644 --- a/riscos/plugin.c +++ b/riscos/plugin.c @@ -730,10 +730,10 @@ void plugin_url_access(wimp_message *message) strcasecmp(window, "_parent") == 0 || strcasecmp(window, "_top") == 0 || strcasecmp(window, "") == 0) { - browser_window_go(c->data.plugin.bw, url, false); + browser_window_go(c->data.plugin.bw, url, 0); } else if (strcasecmp(window, "_blank") == 0) { - browser_window_create(url, NULL); + browser_window_create(url, NULL, 0); } } else { /* POST request */ diff --git a/riscos/uri.c b/riscos/uri.c index ee4ce10e8..035fa59f2 100644 --- a/riscos/uri.c +++ b/riscos/uri.c @@ -55,7 +55,7 @@ void ro_uri_message_received(uri_full_message_process* uri_message) xuri_request_uri(0, uri_requested, uri_length, uri_handle, NULL); - browser_window_create(uri_requested, NULL); + browser_window_create(uri_requested, NULL, 0); xfree(uri_requested); } diff --git a/riscos/url_protocol.c b/riscos/url_protocol.c index 857e43a25..d046ed38b 100644 --- a/riscos/url_protocol.c +++ b/riscos/url_protocol.c @@ -103,7 +103,7 @@ void ro_url_message_received(wimp_message *message) } /* create new browser window */ - browser_window_create(url, 0); + browser_window_create(url, 0, 0); free(url); } diff --git a/riscos/window.c b/riscos/window.c index dd0d9dfad..9f0c7dcf6 100644 --- a/riscos/window.c +++ b/riscos/window.c @@ -1099,18 +1099,18 @@ void ro_gui_toolbar_click(struct gui_window *g, wimp_pointer *pointer) if (option_homepage_url && option_homepage_url[0]) { if (pointer->buttons == wimp_CLICK_SELECT) { browser_window_go_post(g->bw, option_homepage_url, - 0, 0, true, false); + 0, 0, true, 0); } else { - browser_window_create(option_homepage_url, NULL); + browser_window_create(option_homepage_url, NULL, 0); } } else { snprintf(url, sizeof url, "file://Docs/intro_%s", option_language); if (pointer->buttons == wimp_CLICK_SELECT) { - browser_window_go_post(g->bw, url, 0, 0, true, false); + browser_window_go_post(g->bw, url, 0, 0, true, 0); } else { - browser_window_create(url, NULL); + browser_window_create(url, NULL, 0); } } break; @@ -1461,7 +1461,7 @@ bool ro_gui_window_keypress(struct gui_window *g, int key, bool toolbar) res = url_normalize(toolbar_url, &url); if (res == URL_FUNC_OK) { gui_window_set_url(g, url); - browser_window_go(g->bw, url, false); + browser_window_go(g->bw, url, 0); free(url); } return true; @@ -1473,7 +1473,7 @@ bool ro_gui_window_keypress(struct gui_window *g, int key, bool toolbar) case 14: /* CTRL+N */ current_gui = g; browser_window_create(current_gui->bw->current_content->url, - current_gui->bw); + current_gui->bw, 0); return true; case 18: /* CTRL+R */ browser_window_reload(g->bw, false); -- cgit v1.2.3