diff options
author | Michael Drake <tlsa@netsurf-browser.org> | 2014-07-08 19:23:55 +0100 |
---|---|---|
committer | Michael Drake <tlsa@netsurf-browser.org> | 2014-07-08 19:23:55 +0100 |
commit | 3c818abaea53b61c15393d1aeaefd1eba52f4d5c (patch) | |
tree | 13704d81d7041a4cd4bc44414baf0de6045021db /render | |
parent | e7e914b6242a17abebb84ecfc5f0b1facaac4e94 (diff) | |
parent | 0694f345daa509546d79f31be285987f43cc5be3 (diff) | |
download | netsurf-3c818abaea53b61c15393d1aeaefd1eba52f4d5c.tar.gz netsurf-3c818abaea53b61c15393d1aeaefd1eba52f4d5c.tar.bz2 |
Merge branch 'master' of git://git.netsurf-browser.org/netsurf
Diffstat (limited to 'render')
-rw-r--r-- | render/form.h | 3 | ||||
-rw-r--r-- | render/html.h | 7 | ||||
-rw-r--r-- | render/html_css_fetcher.c | 21 |
3 files changed, 18 insertions, 13 deletions
diff --git a/render/form.h b/render/form.h index f072b801e..7715b9ad3 100644 --- a/render/form.h +++ b/render/form.h @@ -36,6 +36,7 @@ struct form_select_menu; struct html_content; struct dom_string; struct content; +struct nsurl; /** Form submit method. */ typedef enum { @@ -188,7 +189,7 @@ void form_select_mouse_drag_end(struct form_control *control, void form_select_get_dimensions(struct form_control *control, int *width, int *height); void form_select_process_selection(struct form_control *control, int item); -void form_submit(nsurl *page_url, struct browser_window *target, +void form_submit(struct nsurl *page_url, struct browser_window *target, struct form *form, struct form_control *submit_button); void form_radio_set(struct form_control *radio); diff --git a/render/html.h b/render/html.h index 7ca75e713..a5ee5ffa5 100644 --- a/render/html.h +++ b/render/html.h @@ -51,6 +51,7 @@ struct scrollbar; struct scrollbar_msg_data; struct search_context; struct selection; +struct nsurl; /** * Container for stylesheets used by an HTML document @@ -113,7 +114,7 @@ struct content_html_frames { int margin_height; /** frame margin height */ char *name; /** frame name (for targetting) */ - nsurl *url; /** frame url */ + struct nsurl *url; /** frame url */ bool no_resize; /** frame is not resizable */ frame_scrolling scrolling; /** scrolling characteristics */ @@ -131,7 +132,7 @@ struct content_html_iframe { int margin_height; /** frame margin height */ char *name; /** frame name (for targetting) */ - nsurl *url; /** frame url */ + struct nsurl *url; /** frame url */ frame_scrolling scrolling; /** scrolling characteristics */ bool border; /** frame has a border */ @@ -176,7 +177,7 @@ const char *html_get_encoding(struct hlcache_handle *h); dom_hubbub_encoding_source html_get_encoding_source(struct hlcache_handle *h); struct content_html_frames *html_get_frameset(struct hlcache_handle *h); struct content_html_iframe *html_get_iframe(struct hlcache_handle *h); -nsurl *html_get_base_url(struct hlcache_handle *h); +struct nsurl *html_get_base_url(struct hlcache_handle *h); const char *html_get_base_target(struct hlcache_handle *h); void html_set_file_gadget_filename(struct hlcache_handle *hl, struct form_control *gadget, const char *fn); diff --git a/render/html_css_fetcher.c b/render/html_css_fetcher.c index 9bd3b21a6..3df1528af 100644 --- a/render/html_css_fetcher.c +++ b/render/html_css_fetcher.c @@ -28,6 +28,7 @@ #include "utils/config.h" #include "content/fetch.h" +#include "content/fetchers.h" #include "render/html_internal.h" #include "utils/log.h" #include "utils/ring.h" @@ -276,6 +277,16 @@ static void html_css_fetcher_poll(lwc_string *scheme) void html_css_fetcher_register(void) { lwc_string *scheme; + const struct fetcher_operation_table html_css_fetcher_ops = { + .initialise = html_css_fetcher_initialise, + .acceptable = html_css_fetcher_can_fetch, + .setup = html_css_fetcher_setup, + .start = html_css_fetcher_start, + .abort = html_css_fetcher_abort, + .free = html_css_fetcher_free, + .poll = html_css_fetcher_poll, + .finalise = html_css_fetcher_finalise + }; if (lwc_intern_string("x-ns-css", SLEN("x-ns-css"), &scheme) != lwc_error_ok) { @@ -283,15 +294,7 @@ void html_css_fetcher_register(void) "(couldn't intern \"x-ns-css\")."); } - fetch_add_fetcher(scheme, - html_css_fetcher_initialise, - html_css_fetcher_can_fetch, - html_css_fetcher_setup, - html_css_fetcher_start, - html_css_fetcher_abort, - html_css_fetcher_free, - html_css_fetcher_poll, - html_css_fetcher_finalise); + fetcher_add(scheme, &html_css_fetcher_ops); } nserror html_css_fetcher_add_item(dom_string *data, nsurl *base_url, |