summaryrefslogtreecommitdiff
path: root/framebuffer/gui.h
diff options
context:
space:
mode:
authorMichael Drake <tlsa@netsurf-browser.org>2014-07-26 22:12:55 +0100
committerMichael Drake <tlsa@netsurf-browser.org>2014-07-26 22:12:55 +0100
commit31def6a33878b1ca8f5340d30708c853cdafefa1 (patch)
treee8ec8b84db672163a1a01ee93937adefe6b1cc57 /framebuffer/gui.h
parent989e82544e3a5b2f74216e91d269e3572c8053ce (diff)
downloadnetsurf-31def6a33878b1ca8f5340d30708c853cdafefa1.tar.gz
netsurf-31def6a33878b1ca8f5340d30708c853cdafefa1.tar.bz2
Add rudimentary support for resizing.
- Currently only libnsfb's SDL surface supports resizing. - Flickers like crazy while resizing. Possibly because the SDL surface is not set to use double buffering. - The internal widget library, fbtk, was never intended for this, as such it has no knowledge of how a widget should be positioned with respect to its parent. This means the top level window has to track everything and move them itself.
Diffstat (limited to 'framebuffer/gui.h')
-rw-r--r--framebuffer/gui.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/framebuffer/gui.h b/framebuffer/gui.h
index c1fa3cc1d..e102b2551 100644
--- a/framebuffer/gui.h
+++ b/framebuffer/gui.h
@@ -20,6 +20,7 @@
#define NETSURF_FB_GUI_H
typedef struct fb_cursor_s fb_cursor_t;
+typedef struct fbtk_widget_s fbtk_widget_t;
/* bounding box */
typedef struct nsfb_bbox_s bbox_t;
@@ -41,16 +42,25 @@ struct gui_window {
struct fbtk_widget_s *window;
struct fbtk_widget_s *back;
struct fbtk_widget_s *forward;
+ struct fbtk_widget_s *history;
+ struct fbtk_widget_s *stop;
+ struct fbtk_widget_s *reload;
+ struct fbtk_widget_s *close;
struct fbtk_widget_s *url;
struct fbtk_widget_s *status;
struct fbtk_widget_s *throbber;
struct fbtk_widget_s *hscroll;
struct fbtk_widget_s *vscroll;
struct fbtk_widget_s *browser;
+ struct fbtk_widget_s *toolbar;
+ struct fbtk_widget_s *bottom_right;
int throbber_index;
struct gui_localhistory *localhistory;
+
+ struct gui_window *next;
+ struct gui_window *prev;
};
@@ -59,6 +69,8 @@ extern struct gui_window *window_list;
struct gui_localhistory *fb_create_localhistory(struct browser_window *bw, struct fbtk_widget_s *parent, int furniture_width);
void fb_localhistory_map(struct gui_localhistory * glh);
+void gui_resize(fbtk_widget_t *root, int width, int height);
+
#endif /* NETSURF_FB_GUI_H */