summaryrefslogtreecommitdiff
path: root/desktop/browser.h
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/browser.h')
-rw-r--r--desktop/browser.h146
1 files changed, 1 insertions, 145 deletions
diff --git a/desktop/browser.h b/desktop/browser.h
index dda2d3eed..d5ad064cc 100644
--- a/desktop/browser.h
+++ b/desktop/browser.h
@@ -33,17 +33,11 @@
#include "utils/types.h"
-struct box;
+struct browser_window;
struct hlcache_handle;
-struct form;
-struct form_control;
struct gui_window;
struct history;
struct selection;
-struct browser_window;
-struct url_data;
-struct bitmap;
-struct scroll_msg_data;
struct fetch_multipart_data;
typedef bool (*browser_caret_callback)(struct browser_window *bw, uint32_t key,
@@ -66,144 +60,6 @@ typedef enum {
DRAGGING_OTHER
} browser_drag_type;
-/** Browser window data. */
-struct browser_window {
- /** Page currently displayed, or 0. Must have status READY or DONE. */
- struct hlcache_handle *current_content;
- /** Page being loaded, or 0. */
- struct hlcache_handle *loading_content;
-
- /** Page Favicon */
- struct hlcache_handle *current_favicon;
- /** handle for favicon which we started loading early */
- struct hlcache_handle *loading_favicon;
- /** favicon fetch already failed - prevents infinite error looping */
- bool failed_favicon;
-
- /** Window history structure. */
- struct history *history;
-
- /** Handler for keyboard input, or 0. */
- browser_caret_callback caret_callback;
- /** Handler for pasting text, or 0. */
- browser_paste_callback paste_callback;
- /** Handler for repositioning caret, or 0. */
- browser_move_callback move_callback;
-
- /** User parameters for caret_callback, paste_callback, and
- * move_callback */
- void *caret_p1;
- void *caret_p2;
-
- /** Platform specific window data. */
- struct gui_window *window;
-
- /** Busy indicator is active. */
- bool throbbing;
- /** Add loading_content to the window history when it loads. */
- bool history_add;
-
- /** Fragment identifier for current_content. */
- lwc_string *frag_id;
-
- /** Current drag status. */
- browser_drag_type drag_type;
-
- /** Current drag's browser window, when not in root bw. */
- struct browser_window *drag_window;
-
- /** Mouse position at start of current scroll drag. */
- int drag_start_x;
- int drag_start_y;
- /** Scroll offsets at start of current scroll draw. */
- int drag_start_scroll_x;
- int drag_start_scroll_y;
- /** Frame resize directions for current frame resize drag. */
- unsigned int drag_resize_left : 1;
- unsigned int drag_resize_right : 1;
- unsigned int drag_resize_up : 1;
- unsigned int drag_resize_down : 1;
-
- /** Current fetch is download */
- bool download;
-
- /** Refresh interval (-1 if undefined) */
- int refresh_interval;
-
- /** Window has been resized, and content needs reformatting. */
- bool reformat_pending;
-
- /** Window dimensions */
- int x;
- int y;
- int width;
- int height;
-
- struct scrollbar *scroll_x; /**< Horizontal scroll. */
- struct scrollbar *scroll_y; /**< Vertical scroll. */
-
- /** scale of window contents */
- float scale;
-
- /** Window characteristics */
- enum {
- BROWSER_WINDOW_NORMAL,
- BROWSER_WINDOW_IFRAME,
- BROWSER_WINDOW_FRAME,
- BROWSER_WINDOW_FRAMESET,
- } browser_window_type;
-
- /** frameset characteristics */
- int rows;
- int cols;
-
- /** frame dimensions */
- struct frame_dimension frame_width;
- struct frame_dimension frame_height;
- int margin_width;
- int margin_height;
-
- /** frame name for targetting */
- char *name;
-
- /** frame characteristics */
- bool no_resize;
- frame_scrolling scrolling;
- bool border;
- colour border_colour;
-
- /** iframe parent box */
- struct box *box;
-
- /** [cols * rows] children */
- struct browser_window *children;
- struct browser_window *parent;
-
- /** [iframe_count] iframes */
- int iframe_count;
- struct browser_window *iframes;
-
- /** browser window child of root browser window which has input focus */
- struct browser_window *focus;
-
- /** Last time a link was followed in this window */
- unsigned int last_action;
-
- /** Current selection, or NULL if none */
- struct selection *cur_sel;
-
- /** Current context for free text search, or NULL if none */
- struct search_context *cur_search;
-
- /** current javascript context */
- struct jscontext *jsctx;
-
- /** cache of the currently displayed status text. */
- char *status_text; /**< Current status bar text. */
- int status_text_len; /**< Length of the browser_window::status_text buffer. */
- int status_match; /**< Number of times an idempotent status-set operation was performed. */
- int status_miss; /**< Number of times status was really updated. */
-};
extern bool browser_reformat_pending;