From db33103fa3d0e7b4623dc321792963969e15e683 Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Wed, 29 Jan 2014 21:35:53 +0000 Subject: clean up desktop/gui.h include usage --- content/fetchers/resource.c | 1 - desktop/browser.c | 1 - desktop/browser.h | 2 +- desktop/download.c | 2 +- desktop/frames.c | 2 +- desktop/gui.h | 58 ++++++++++++++++++++++++++++++++++++++------- desktop/gui_factory.c | 3 ++- desktop/local_history.c | 2 +- desktop/search.c | 1 - desktop/searchweb.c | 1 - desktop/selection.c | 1 - desktop/textinput.c | 1 - framebuffer/fetch.c | 1 + gtk/download.c | 4 +++- gtk/fetch.c | 2 ++ gtk/scaffolding.h | 2 +- monkey/download.c | 8 ++++--- render/form.c | 3 +-- render/search.c | 1 - render/textplain.c | 1 - 20 files changed, 69 insertions(+), 28 deletions(-) diff --git a/content/fetchers/resource.c b/content/fetchers/resource.c index b2791b432..a5c12bbdb 100644 --- a/content/fetchers/resource.c +++ b/content/fetchers/resource.c @@ -41,7 +41,6 @@ #include "content/fetch.h" #include "content/fetchers/resource.h" #include "content/urldb.h" -#include "desktop/gui.h" #include "desktop/gui_factory.h" #include "utils/corestrings.h" #include "utils/nsoption.h" diff --git a/desktop/browser.c b/desktop/browser.c index a33c1b6eb..f46d50eec 100644 --- a/desktop/browser.c +++ b/desktop/browser.c @@ -45,7 +45,6 @@ #include "desktop/download.h" #include "desktop/frames.h" #include "desktop/global_history.h" -#include "desktop/gui.h" #include "desktop/gui_factory.h" #include "desktop/hotlist.h" #include "desktop/knockout.h" diff --git a/desktop/browser.h b/desktop/browser.h index 0ca2e009b..d61e6a012 100644 --- a/desktop/browser.h +++ b/desktop/browser.h @@ -27,8 +27,8 @@ #include #include "content/content.h" +#include "content/hlcache.h" #include "desktop/frame_types.h" -#include "desktop/gui.h" #include "desktop/mouse.h" #include "utils/types.h" diff --git a/desktop/download.c b/desktop/download.c index b5427b405..b458f577c 100644 --- a/desktop/download.c +++ b/desktop/download.c @@ -23,10 +23,10 @@ #include #include +#include #include "content/llcache.h" #include "desktop/download.h" -#include "desktop/gui.h" #include "desktop/gui_factory.h" #include "utils/corestrings.h" #include "utils/http.h" diff --git a/desktop/frames.c b/desktop/frames.c index 3f7613f32..354c70da4 100644 --- a/desktop/frames.c +++ b/desktop/frames.c @@ -28,12 +28,12 @@ #include #include #include + #include "utils/config.h" #include "content/hlcache.h" #include "desktop/browser_private.h" #include "desktop/frames.h" #include "desktop/local_history.h" -#include "desktop/gui.h" #include "desktop/scrollbar.h" #include "desktop/selection.h" #include "utils/log.h" diff --git a/desktop/gui.h b/desktop/gui.h index da609b1e3..37066e1a7 100644 --- a/desktop/gui.h +++ b/desktop/gui.h @@ -24,10 +24,13 @@ #define _NETSURF_DESKTOP_GUI_H_ #include +#include -#include "content/hlcache.h" -#include "desktop/download.h" +#include "utils/types.h" #include "utils/errors.h" +#include "utils/nsurl.h" +#include "desktop/plot_style.h" +#include "desktop/mouse.h" typedef enum { GUI_SAVE_SOURCE, @@ -58,6 +61,8 @@ struct gui_download_window; struct browser_window; struct form_control; struct ssl_cert_info; +struct hlcache_handle; +struct download_context; typedef struct nsnsclipboard_styles { size_t start; /**< Start of run */ @@ -155,7 +160,7 @@ struct gui_window_table { void (*set_url)(struct gui_window *g, const char *url); /** set favicon */ - void (*set_icon)(struct gui_window *g, hlcache_handle *icon); + void (*set_icon)(struct gui_window *g, struct hlcache_handle *icon); /** * Set the status bar of a browser window. @@ -232,10 +237,10 @@ struct gui_window_table { /** * Called when file chooser gadget is activated */ - void (*file_gadget_open)(struct gui_window *g, hlcache_handle *hl, struct form_control *gadget); + void (*file_gadget_open)(struct gui_window *g, struct hlcache_handle *hl, struct form_control *gadget); /** object dragged to window*/ - void (*drag_save_object)(struct gui_window *g, hlcache_handle *c, gui_save_type type); + void (*drag_save_object)(struct gui_window *g, struct hlcache_handle *c, gui_save_type type); /** drag selection save */ void (*drag_save_selection)(struct gui_window *g, const char *selection); @@ -248,7 +253,7 @@ struct gui_window_table { * function table for download windows */ struct gui_download_table { - struct gui_download_window *(*create)(download_context *ctx, struct gui_window *parent); + struct gui_download_window *(*create)(struct download_context *ctx, struct gui_window *parent); nserror (*data)(struct gui_download_window *dw, const char *data, unsigned int size); @@ -365,6 +370,31 @@ struct gui_fetch_table { }; +/** + * User interface utf8 characterset conversion routines + */ +struct gui_utf8_table { + /** + * Convert a UTF-8 encoded string into the system local encoding + * + * \param string The string to convert + * \param len The length (in bytes) of the string, or 0 + * \param result Pointer to location in which to store result + * \return An nserror code + */ + nserror (*utf8_to_local)(const char *string, size_t len, char **result); + + /** + * Convert a string encoded in the system local encoding to UTF-8 + * + * \param string The string to convert + * \param len The length (in bytes) of the string, or 0 + * \param result Pointer to location in which to store result + * \return An nserror code + */ + nserror (*local_to_utf8)(const char *string, size_t len, char **result); +}; + /** Graphical user interface browser misc function table * * function table implementing GUI interface to miscelaneous browser @@ -392,7 +422,7 @@ struct gui_browser_table { * \param ico may be NULL for local calls; then access current * cache from search_web_ico() */ - void (*set_search_ico)(hlcache_handle *ico); + void (*set_search_ico)(struct hlcache_handle *ico); /** * core has no fetcher for url @@ -424,7 +454,11 @@ struct gui_browser_table { */ struct gui_table { - /** Browser table */ + /** Browser table. + * + * Provides miscellaneous browser functionality. The table + * is mandantory and must be provided. + */ struct gui_browser_table *browser; /** Window table */ @@ -438,6 +472,14 @@ struct gui_table { /** Fetcher table */ struct gui_fetch_table *fetch; + + /** UTF8 table + * + * Provides for conversion between the gui local character + * encoding and utf8. The table optional and may be NULL which + * implies the local encoding is utf8. + */ + struct gui_utf8_table *utf8; }; diff --git a/desktop/gui_factory.c b/desktop/gui_factory.c index dfe775571..b61fdf0be 100644 --- a/desktop/gui_factory.c +++ b/desktop/gui_factory.c @@ -16,7 +16,8 @@ * along with this program. If not, see . */ -#include "desktop/gui.h" +#include "content/hlcache.h" +#include "desktop/download.h" #include "desktop/gui_factory.h" /** The global GUI interface table */ diff --git a/desktop/local_history.c b/desktop/local_history.c index d4ecfd3bb..9829f51b6 100644 --- a/desktop/local_history.c +++ b/desktop/local_history.c @@ -26,12 +26,12 @@ #include #include #include + #include "content/content.h" #include "content/hlcache.h" #include "content/urldb.h" #include "css/css.h" #include "desktop/browser.h" -#include "desktop/gui.h" #include "desktop/local_history.h" #include "desktop/plotters.h" #include "desktop/thumbnail.h" diff --git a/desktop/search.c b/desktop/search.c index 3a7c768a5..4a02f6b7c 100644 --- a/desktop/search.c +++ b/desktop/search.c @@ -29,7 +29,6 @@ #include "content/content.h" #include "content/hlcache.h" #include "desktop/browser_private.h" -#include "desktop/gui.h" #include "utils/nsoption.h" #include "desktop/search.h" #include "desktop/selection.h" diff --git a/desktop/searchweb.c b/desktop/searchweb.c index b3f6162a6..bdcb2ba8a 100644 --- a/desktop/searchweb.c +++ b/desktop/searchweb.c @@ -26,7 +26,6 @@ #include "content/content.h" #include "content/hlcache.h" #include "desktop/browser.h" -#include "desktop/gui.h" #include "desktop/gui_factory.h" #include "utils/nsoption.h" #include "desktop/searchweb.h" diff --git a/desktop/selection.c b/desktop/selection.c index 96c7e0c3c..34292fdce 100644 --- a/desktop/selection.c +++ b/desktop/selection.c @@ -29,7 +29,6 @@ #include #include "desktop/browser_private.h" -#include "desktop/gui.h" #include "desktop/gui_factory.h" #include "desktop/mouse.h" #include "desktop/plotters.h" diff --git a/desktop/textinput.c b/desktop/textinput.c index c61b838fe..fd6ae9ff1 100644 --- a/desktop/textinput.c +++ b/desktop/textinput.c @@ -30,7 +30,6 @@ #include #include "desktop/browser_private.h" -#include "desktop/gui.h" #include "desktop/gui_factory.h" #include "desktop/mouse.h" #include "desktop/scrollbar.h" diff --git a/framebuffer/fetch.c b/framebuffer/fetch.c index 0c9b90f7c..f350f3634 100644 --- a/framebuffer/fetch.c +++ b/framebuffer/fetch.c @@ -22,6 +22,7 @@ #include #include +#include #include "desktop/gui.h" #include "utils/url.h" diff --git a/gtk/download.c b/gtk/download.c index 3d287d4d2..e49e66ef3 100644 --- a/gtk/download.c +++ b/gtk/download.c @@ -27,10 +27,12 @@ #include "utils/utils.h" #include "utils/url.h" #include "utils/messages.h" +#include "utils/nsoption.h" +#include "desktop/download.h" #include "desktop/gui.h" + #include "gtk/gui.h" #include "gtk/scaffolding.h" -#include "utils/nsoption.h" #include "gtk/download.h" #include "gtk/window.h" #include "gtk/compat.h" diff --git a/gtk/fetch.c b/gtk/fetch.c index f4a42b5f8..0043cd062 100644 --- a/gtk/fetch.c +++ b/gtk/fetch.c @@ -20,6 +20,8 @@ #include #include #include +#include +#include #include "utils/hashtable.h" #include "utils/url.h" diff --git a/gtk/scaffolding.h b/gtk/scaffolding.h index 43eb41b19..757da82fd 100644 --- a/gtk/scaffolding.h +++ b/gtk/scaffolding.h @@ -20,9 +20,9 @@ #define NETSURF_GTK_SCAFFOLDING_H 1 #include -//#include #include +#include "content/hlcache.h" #include "desktop/gui.h" #include "desktop/plotters.h" #include "gtk/menu.h" diff --git a/monkey/download.c b/monkey/download.c index d2e3b4b24..721f77ddc 100644 --- a/monkey/download.c +++ b/monkey/download.c @@ -16,11 +16,13 @@ * along with this program. If not, see . */ -#include "desktop/browser.h" -#include "monkey/browser.h" +#include + +#include "desktop/gui.h" +#include "desktop/download.h" #include "utils/ring.h" -#include +#include "monkey/browser.h" static uint32_t dwin_ctr = 0; diff --git a/render/form.c b/render/form.c index c9d74a1c2..905401a63 100644 --- a/render/form.c +++ b/render/form.c @@ -32,12 +32,11 @@ #include #include #include + #include "content/fetch.h" #include "content/hlcache.h" #include "css/css.h" #include "css/utils.h" -#include "desktop/browser.h" -#include "desktop/gui.h" #include "desktop/mouse.h" #include "desktop/knockout.h" #include "desktop/plot_style.h" diff --git a/render/search.c b/render/search.c index 895cff0a1..46ec7d1fc 100644 --- a/render/search.c +++ b/render/search.c @@ -30,7 +30,6 @@ #include "content/content.h" #include "content/hlcache.h" -#include "desktop/gui.h" #include "desktop/selection.h" #include "render/box.h" #include "render/html.h" diff --git a/render/textplain.c b/render/textplain.c index 5254e6aba..b459efc6c 100644 --- a/render/textplain.c +++ b/render/textplain.c @@ -35,7 +35,6 @@ #include "css/css.h" #include "css/utils.h" #include "desktop/browser.h" -#include "desktop/gui.h" #include "utils/nsoption.h" #include "desktop/plotters.h" #include "desktop/search.h" -- cgit v1.2.3