summaryrefslogtreecommitdiff
path: root/framebuffer
diff options
context:
space:
mode:
authorVincent Sanders <vince@netsurf-browser.org>2014-01-15 19:37:05 +0000
committerVincent Sanders <vince@netsurf-browser.org>2014-01-15 19:37:05 +0000
commitbd065d4a434755e67642a071e255cba596de8d1e (patch)
tree343a4343ace1c38f3ab67b3a9405a629fbbaa117 /framebuffer
parent68eaec5cb4208ee80e7c0610361405fd01fc1b69 (diff)
downloadnetsurf-bd065d4a434755e67642a071e255cba596de8d1e.tar.gz
netsurf-bd065d4a434755e67642a071e255cba596de8d1e.tar.bz2
split browser gui operations up
Diffstat (limited to 'framebuffer')
-rw-r--r--framebuffer/clipboard.c10
-rw-r--r--framebuffer/clipboard.h4
-rw-r--r--framebuffer/gui.c13
3 files changed, 16 insertions, 11 deletions
diff --git a/framebuffer/clipboard.c b/framebuffer/clipboard.c
index 4f9831340..b4bd296c6 100644
--- a/framebuffer/clipboard.c
+++ b/framebuffer/clipboard.c
@@ -43,7 +43,7 @@ static struct gui_clipboard {
* \param buffer UTF-8 text, allocated by front end, ownership yeilded to core
* \param length Byte length of UTF-8 text in buffer
*/
-void gui_get_clipboard(char **buffer, size_t *length)
+static void gui_get_clipboard(char **buffer, size_t *length)
{
*buffer = NULL;
*length = 0;
@@ -72,7 +72,7 @@ void gui_get_clipboard(char **buffer, size_t *length)
* \param styles Array of styles given to text runs, owned by core, or NULL
* \param n_styles Number of text run styles in array
*/
-void gui_set_clipboard(const char *buffer, size_t length,
+static void gui_set_clipboard(const char *buffer, size_t length,
nsclipboard_styles styles[], int n_styles)
{
if (gui_clipboard.buffer_len < length + 1) {
@@ -94,3 +94,9 @@ void gui_set_clipboard(const char *buffer, size_t length,
gui_clipboard.buffer[gui_clipboard.length] = '\0';
}
+static struct gui_clipboard_table clipboard_table = {
+ .get = gui_get_clipboard,
+ .set = gui_set_clipboard,
+};
+
+struct gui_clipboard_table *framebuffer_clipboard_table = &clipboard_table;
diff --git a/framebuffer/clipboard.h b/framebuffer/clipboard.h
index bc71a5565..b5f7b0f29 100644
--- a/framebuffer/clipboard.h
+++ b/framebuffer/clipboard.h
@@ -19,8 +19,6 @@
#ifndef NETSURF_FB_CLIPBOARD_H
#define NETSURF_FB_CLIPBOARD_H
-void gui_get_clipboard(char **buffer, size_t *length);
-void gui_set_clipboard(const char *buffer, size_t length,
- nsclipboard_styles styles[], int n_styles);
+extern struct gui_clipboard_table *framebuffer_clipboard_table;
#endif
diff --git a/framebuffer/gui.c b/framebuffer/gui.c
index 8b90b52f7..b2edc030a 100644
--- a/framebuffer/gui.c
+++ b/framebuffer/gui.c
@@ -1768,7 +1768,7 @@ gui_window_remove_caret(struct gui_window *g)
}
-static struct gui_window_table framebuffer_gui_window_table = {
+static struct gui_window_table framebuffer_window_table = {
.create = gui_window_create,
.destroy = gui_window_destroy,
.redraw = gui_window_redraw_window,
@@ -1787,14 +1787,10 @@ static struct gui_window_table framebuffer_gui_window_table = {
.stop_throbber = gui_window_stop_throbber,
};
-static struct gui_table framebuffer_gui_table = {
+static struct gui_browser_table framebuffer_browser_table = {
.poll = gui_poll,
.quit = gui_quit,
.get_resource_url = gui_get_resource_url,
- .get_clipboard = gui_get_clipboard,
- .set_clipboard = gui_set_clipboard,
-
- .window = &framebuffer_gui_window_table,
};
/** Entry point from OS.
@@ -1812,6 +1808,11 @@ main(int argc, char** argv)
nsurl *url;
nserror ret;
nsfb_t *nsfb;
+ struct gui_table framebuffer_gui_table = {
+ .browser = &framebuffer_browser_table,
+ .window = &framebuffer_window_table,
+ .clipboard = framebuffer_clipboard_table,
+ };
respaths = fb_init_resource(NETSURF_FB_RESPATH":"NETSURF_FB_FONTPATH);