summaryrefslogtreecommitdiff
path: root/render
diff options
context:
space:
mode:
authorMichael Drake <tlsa@netsurf-browser.org>2014-07-08 19:23:55 +0100
committerMichael Drake <tlsa@netsurf-browser.org>2014-07-08 19:23:55 +0100
commit3c818abaea53b61c15393d1aeaefd1eba52f4d5c (patch)
tree13704d81d7041a4cd4bc44414baf0de6045021db /render
parente7e914b6242a17abebb84ecfc5f0b1facaac4e94 (diff)
parent0694f345daa509546d79f31be285987f43cc5be3 (diff)
downloadnetsurf-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.h3
-rw-r--r--render/html.h7
-rw-r--r--render/html_css_fetcher.c21
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,