X-Git-Url: https://vcs.maemo.org/git/?a=blobdiff_plain;f=uzbl.h;h=d67a84eb67a722c9c6369e5c25426bc3c0b6e9d6;hb=830fe604bc141064ca09120f92cd4f496c918f5f;hp=bbc1f394372888a55eb736cf4889cd5a3e851cd5;hpb=aa03a11176e42cc21bca894e0141bf90fc80959b;p=uzbl-mobile diff --git a/uzbl.h b/uzbl.h index bbc1f39..d67a84e 100644 --- a/uzbl.h +++ b/uzbl.h @@ -1,4 +1,4 @@ -/* -*- c-basic-offset: 4; -*- +/* -*- c-basic-offset: 4; -*- * See LICENSE for license details * @@ -11,8 +11,6 @@ * */ -#define NOSPLIT ((void*)1) - enum { /* statusbar symbols */ SYM_TITLE, SYM_URI, SYM_NAME, @@ -67,6 +65,7 @@ typedef struct { /* gui elements */ typedef struct { GtkWidget* main_window; + GtkPlug* plug; GtkWidget* scrolled_win; GtkWidget* vbox; GtkWidget* mainbar; @@ -77,6 +76,7 @@ typedef struct { GtkAdjustment* bar_h; // and scrolling position WebKitWebView* web_view; gchar* main_title; + gchar* icon; /* WebInspector */ GtkWidget *inspector_window; @@ -101,7 +101,8 @@ typedef struct { typedef struct { gchar *uri; gchar *config_file; - char *instance_name; + int socket_id; + char *instance_name; gchar *selected_url; gchar *executable_path; GString* keycmd; @@ -136,6 +137,7 @@ typedef struct { gchar* socket_dir; gchar* download_handler; gchar* cookie_handler; + gchar* new_window; gboolean always_insert_mode; gboolean show_status; gboolean insert_mode; @@ -149,31 +151,39 @@ typedef struct { guint font_size; guint monospace_size; guint minimum_font_size; + gfloat zoom_level; guint disable_plugins; guint disable_scripts; - guint autoload_img; - guint autoshrink_img; + guint autoload_img; + guint autoshrink_img; guint enable_spellcheck; - guint enable_private; - guint print_bg; - gchar* style_uri; - guint resizable_txt; - gchar* default_encoding; - guint enforce_96dpi; + guint enable_private; + guint print_bg; + gchar* style_uri; + guint resizable_txt; + gchar* default_encoding; + guint enforce_96dpi; gchar *inject_html; - guint caret_browsing; - guint mode; + guint caret_browsing; + guint mode; gchar* base_url; gchar* html_endmarker; gchar* insert_indicator; gchar* cmd_indicator; GString* html_buffer; - guint html_timeout; + guint html_timeout; + gboolean print_version; /* command list: name -> Command */ GHashTable* commands; } Behaviour; +/* javascript */ +typedef struct { + gboolean initialized; + JSClassDefinition classdef; + JSClassRef classref; +} Javascript; /* main uzbl data structure */ typedef struct { @@ -182,6 +192,7 @@ typedef struct { Network net; Behaviour behave; Communication comm; + Javascript js; Window xwin; GScanner *scan; @@ -205,7 +216,7 @@ typedef struct { gchar* default_value; } XDG_Var; -XDG_Var XDG[] = +XDG_Var XDG[] = { { "XDG_CONFIG_HOME", "~/.config" }, { "XDG_DATA_HOME", "~/.local/share" }, @@ -243,11 +254,14 @@ static gboolean set_var_value(gchar *name, gchar *val); static void -print(WebKitWebView *page, GArray *argv); +print(WebKitWebView *page, GArray *argv, GString *result); static gboolean new_window_cb (WebKitWebView *web_view, WebKitWebFrame *frame, WebKitNetworkRequest *request, WebKitWebNavigationAction *navigation_action, WebKitWebPolicyDecision *policy_decision, gpointer user_data); +static gboolean +mime_policy_cb(WebKitWebView *web_view, WebKitWebFrame *frame, WebKitNetworkRequest *request, gchar *mime_type, WebKitWebPolicyDecision *policy_decision, gpointer user_data); + WebKitWebView* create_web_view_cb (WebKitWebView *web_view, WebKitWebFrame *frame, gpointer user_data); @@ -255,13 +269,16 @@ static gboolean download_cb (WebKitWebView *web_view, GObject *download, gpointer user_data); static void -toggle_status_cb (WebKitWebView* page, GArray *argv); +toggle_zoom_type (WebKitWebView* page, GArray *argv, GString *result); + +static void +toggle_status_cb (WebKitWebView* page, GArray *argv, GString *result); static void link_hover_cb (WebKitWebView* page, const gchar* title, const gchar* link, gpointer data); static void -title_change_cb (WebKitWebView* web_view, WebKitWebFrame* web_frame, const gchar* title, gpointer data); +title_change_cb (WebKitWebView* web_view, GParamSpec param_spec); static void progress_change_cb (WebKitWebView* page, gint progress, gpointer data); @@ -294,50 +311,50 @@ static bool file_exists (const char * filename); static void -toggle_insert_mode(WebKitWebView *page, GArray *argv); +toggle_insert_mode(WebKitWebView *page, GArray *argv, GString *result); static void -load_uri (WebKitWebView * web_view, GArray *argv); +load_uri (WebKitWebView * web_view, GArray *argv, GString *result); static void new_window_load_uri (const gchar * uri); static void -chain (WebKitWebView *page, GArray *argv); +chain (WebKitWebView *page, GArray *argv, GString *result); static void -keycmd (WebKitWebView *page, GArray *argv); +keycmd (WebKitWebView *page, GArray *argv, GString *result); static void -keycmd_nl (WebKitWebView *page, GArray *argv); +keycmd_nl (WebKitWebView *page, GArray *argv, GString *result); static void -keycmd_bs (WebKitWebView *page, GArray *argv); +keycmd_bs (WebKitWebView *page, GArray *argv, GString *result); static void -close_uzbl (WebKitWebView *page, GArray *argv); +close_uzbl (WebKitWebView *page, GArray *argv, GString *result); static gboolean run_command(const gchar *command, const guint npre, - const gchar **args, const gboolean sync, char **stdout); + const gchar **args, const gboolean sync, char **output_stdout); static void -spawn(WebKitWebView *web_view, GArray *argv); +spawn(WebKitWebView *web_view, GArray *argv, GString *result); static void -spawn_sh(WebKitWebView *web_view, GArray *argv); +spawn_sh(WebKitWebView *web_view, GArray *argv, GString *result); static void -spawn_sync(WebKitWebView *web_view, GArray *argv); +spawn_sync(WebKitWebView *web_view, GArray *argv, GString *result); static void -spawn_sh_sync(WebKitWebView *web_view, GArray *argv); +spawn_sh_sync(WebKitWebView *web_view, GArray *argv, GString *result); static void -parse_command(const char *cmd, const char *param); +parse_command(const char *cmd, const char *param, GString *result); static void -parse_cmd_line(const char *ctl_line); +parse_cmd_line(const char *ctl_line, GString *result); static gchar* build_stream_name(int type, const gchar *dir); @@ -360,6 +377,9 @@ init_socket(gchar *dir); static gboolean control_socket(GIOChannel *chan); +static gboolean +control_client_socket(GIOChannel *chan); + static void update_title (void); @@ -381,6 +401,9 @@ create_mainbar (); static GtkWidget* create_window (); +static +GtkPlug* create_plug (); + static void run_handler (const gchar *act, const gchar *args); @@ -400,19 +423,22 @@ static void search_text (WebKitWebView *page, GArray *argv, const gboolean forward); static void -search_forward_text (WebKitWebView *page, GArray *argv); +search_forward_text (WebKitWebView *page, GArray *argv, GString *result); static void -search_reverse_text (WebKitWebView *page, GArray *argv); +search_reverse_text (WebKitWebView *page, GArray *argv, GString *result); static void -dehilight (WebKitWebView *page, GArray *argv); +dehilight (WebKitWebView *page, GArray *argv, GString *result); static void -run_js (WebKitWebView * web_view, GArray *argv); +run_js (WebKitWebView * web_view, GArray *argv, GString *result); static void -run_external_js (WebKitWebView * web_view, GArray *argv); +run_external_js (WebKitWebView * web_view, GArray *argv, GString *result); + +static void +eval_js(WebKitWebView * web_view, gchar *script, GString *result); static void handle_cookies (SoupSession *session, SoupMessage *msg, @@ -422,15 +448,12 @@ save_cookies (SoupMessage *msg, gpointer user_data); static void -set_var(WebKitWebView *page, GArray *argv); +set_var(WebKitWebView *page, GArray *argv, GString *result); static void -<<<<<<< HEAD:uzbl.h -======= -act_bind(WebKitWebView *page, GArray *argv); +act_bind(WebKitWebView *page, GArray *argv, GString *result); static void ->>>>>>> dieterbe/experimental:uzbl.h act_dump_config(); static void @@ -449,6 +472,12 @@ static void dump_config(); +typedef void (*Command)(WebKitWebView*, GArray *argv, GString *result); +typedef struct { + Command function; + gboolean no_split; +} CommandInfo; + /* Command callbacks */ static void cmd_load_uri(); @@ -460,9 +489,15 @@ static void set_proxy_url(); static void +set_icon(); + +static void cmd_cookie_handler(); static void +cmd_new_window(); + +static void move_statusbar(); static void @@ -477,10 +512,15 @@ cmd_max_conns(); static void cmd_max_conns_host(); +/* exported WebKitWebSettings properties */ + static void cmd_font_size(); static void +cmd_zoom_level(); + +static void cmd_disable_plugins(); static void @@ -516,22 +556,22 @@ cmd_enable_private(); static void cmd_print_bg(); -static void +static void cmd_style_uri(); -static void +static void cmd_resizable_txt(); -static void +static void cmd_default_encoding(); -static void +static void cmd_enforce_96dpi(); static void cmd_inject_html(); -static void +static void cmd_caret_browsing(); /* vi: set et ts=4: */