X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=uzbl.h;h=ab45bae0ff060058d7d59bf283eca785edb85ea4;hb=dfd89110a7a965d417ebda0d16dd024bcfbbf2f5;hp=a02ededa145fe2769f8a3e67f150721ac320f565;hpb=5a9d987fc2c4e9bf3ca0ca3eb10b472338e5c314;p=uzbl-mobile diff --git a/uzbl.h b/uzbl.h index a02eded..ab45bae 100644 --- a/uzbl.h +++ b/uzbl.h @@ -11,10 +11,7 @@ * */ -#define STATUS_DEFAULT " MODE KEYCMD (LOAD_PROGRESS%) TITLE - Uzbl browser" -#define TITLE_LONG_DEFAULT "KEYCMD MODE TITLE - Uzbl browser > SELECTED_URI" -#define TITLE_SHORT_DEFAULT "TITLE - Uzbl browser " - +#define NOSPLIT ((void*)1) enum { /* statusbar symbols */ @@ -62,6 +59,8 @@ const struct { typedef struct { gint load_progress; gchar *msg; + gchar *progress_s, *progress_u; + int progress_w; } StatusBar; @@ -79,6 +78,10 @@ typedef struct { WebKitWebView* web_view; gchar* main_title; + /* WebInspector */ + GtkWidget *inspector_window; + WebKitWebInspector *inspector; + StatusBar sbar; } GUI; @@ -90,12 +93,7 @@ typedef struct { gchar *socket_path; /* stores (key)"variable name" -> (value)"pointer to this var*/ GHashTable *proto_var; - /* command parsing regexes */ - GRegex *set_regex; - GRegex *act_regex; - GRegex *keycmd_regex; - GRegex *get_regex; - GRegex *bind_regex; + gchar *sync_stdout; } Communication; @@ -104,11 +102,10 @@ typedef struct { gchar *uri; gchar *config_file; char *instance_name; - gchar config_file_path[500]; - gchar selected_url[500]; - char executable_path[500]; + gchar *selected_url; + gchar *executable_path; GString* keycmd; - gchar searchtx[500]; + gchar* searchtx; struct utsname unameinfo; /* system info */ gboolean verbose; } State; @@ -128,6 +125,8 @@ typedef struct { /* behaviour */ typedef struct { gchar* load_finish_handler; + gchar* load_start_handler; + gchar* load_commit_handler; gchar* status_format; gchar* title_format_short; gchar* title_format_long; @@ -145,9 +144,32 @@ typedef struct { gchar* modkey; guint modmask; guint http_debug; - guint default_font_size; - guint minimum_font_size; gchar* shell_cmd; + /* WebKitWebSettings exports */ + 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 enable_spellcheck; + 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; + gchar* base_url; + gchar* html_endmarker; + gchar* insert_indicator; + gchar* cmd_indicator; + GString* html_buffer; + guint html_timeout; /* command list: name -> Command */ GHashTable* commands; @@ -203,6 +225,12 @@ itos(int val); static char * str_replace (const char* search, const char* replace, const char* string); +static GArray* +read_file_by_line (gchar *path); + +static +gchar* parseenv (char* string); + static void clean_up(void); @@ -213,8 +241,17 @@ static sigfunc * setup_signal(int signe, sigfunc *shandler); static gboolean +set_var_value(gchar *name, gchar *val); + +static void +print(WebKitWebView *page, GArray *argv); + +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); @@ -222,7 +259,7 @@ static gboolean download_cb (WebKitWebView *web_view, GObject *download, gpointer user_data); static void -toggle_status_cb (WebKitWebView* page, const char *param); +toggle_status_cb (WebKitWebView* page, GArray *argv); static void link_hover_cb (WebKitWebView* page, const gchar* title, const gchar* link, gpointer data); @@ -237,6 +274,9 @@ static void load_commit_cb (WebKitWebView* page, WebKitWebFrame* frame, gpointer data); static void +load_start_cb (WebKitWebView* page, WebKitWebFrame* frame, gpointer data); + +static void load_finish_cb (WebKitWebView* page, WebKitWebFrame* frame, gpointer data); static void @@ -257,33 +297,48 @@ new_action(const gchar *name, const gchar *param); static bool file_exists (const char * filename); -void -set_insert_mode(WebKitWebView *page, const gchar *param); +static void +toggle_insert_mode(WebKitWebView *page, GArray *argv); static void -load_uri (WebKitWebView * web_view, const gchar *param); +load_uri (WebKitWebView * web_view, GArray *argv); static void new_window_load_uri (const gchar * uri); static void -close_uzbl (WebKitWebView *page, const char *param); +chain (WebKitWebView *page, GArray *argv); + +static void +keycmd (WebKitWebView *page, GArray *argv); + +static void +keycmd_nl (WebKitWebView *page, GArray *argv); + +static void +keycmd_bs (WebKitWebView *page, GArray *argv); + +static void +close_uzbl (WebKitWebView *page, GArray *argv); static gboolean run_command(const gchar *command, const guint npre, const gchar **args, const gboolean sync, char **stdout); static void -spawn(WebKitWebView *web_view, const char *param); +spawn(WebKitWebView *web_view, GArray *argv); static void -spawn_sh(WebKitWebView *web_view, const char *param); +spawn_sh(WebKitWebView *web_view, GArray *argv); static void -parse_command(const char *cmd, const char *param); +spawn_sync(WebKitWebView *web_view, GArray *argv); + +static void +spawn_sh_sync(WebKitWebView *web_view, GArray *argv); static void -runcmd(WebKitWebView *page, const char *param); +parse_command(const char *cmd, const char *param); static void parse_cmd_line(const char *ctl_line); @@ -292,12 +347,6 @@ static gchar* build_stream_name(int type, const gchar *dir); static gboolean -var_is(const char *x, const char *y); - -static gchar* -set_useragent(gchar *val); - -static gboolean control_fifo(GIOChannel *gio, GIOCondition condition); static gchar* @@ -319,11 +368,14 @@ static void update_title (void); static gboolean -key_press_cb (WebKitWebView* page, GdkEventKey* event); +key_press_cb (GtkWidget* window, GdkEventKey* event); static void run_keycmd(const gboolean key_ret); +static void +exec_paramcmd(const Action* act, const guint i); + static GtkWidget* create_browser (); @@ -349,21 +401,143 @@ static void settings_init (); static void -search_text (WebKitWebView *page, const char *param, const gboolean forward); +search_text (WebKitWebView *page, GArray *argv, const gboolean forward); static void -search_forward_text (WebKitWebView *page, const char *param); +search_forward_text (WebKitWebView *page, GArray *argv); static void -search_reverse_text (WebKitWebView *page, const char *param); +search_reverse_text (WebKitWebView *page, GArray *argv); static void -run_js (WebKitWebView * web_view, const gchar *param); +dehilight (WebKitWebView *page, GArray *argv); + +static void +run_js (WebKitWebView * web_view, GArray *argv); + +static void +run_external_js (WebKitWebView * web_view, GArray *argv); static void handle_cookies (SoupSession *session, - SoupMessage *msg, - gpointer user_data); + SoupMessage *msg, + gpointer user_data); static void save_cookies (SoupMessage *msg, - gpointer user_data); + gpointer user_data); + +static void +set_var(WebKitWebView *page, GArray *argv); + +static void +act_bind(WebKitWebView *page, GArray *argv); + +static void +act_dump_config(); + +static void +render_html(); + +static void +set_timeout(int seconds); + +static void +dump_var_hash(gpointer k, gpointer v, gpointer ud); + +static void +dump_key_hash(gpointer k, gpointer v, gpointer ud); + +static void +dump_config(); + + +/* Command callbacks */ +static void +cmd_load_uri(); + +static void +cmd_set_status(); + +static void +set_proxy_url(); + +static void +cmd_cookie_handler(); + +static void +move_statusbar(); + +static void +cmd_always_insert_mode(); + +static void +cmd_http_debug(); + +static void +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 +cmd_disable_scripts(); + +static void +cmd_minimum_font_size(); + +static void +cmd_fifo_dir(); + +static void +cmd_socket_dir(); + +static void +cmd_modkey(); + +static void +cmd_useragent() ; + +static void +cmd_autoload_img(); + +static void +cmd_autoshrink_img(); + +static void +cmd_enable_spellcheck(); + +static void +cmd_enable_private(); + +static void +cmd_print_bg(); + +static void +cmd_style_uri(); + +static void +cmd_resizable_txt(); + +static void +cmd_default_encoding(); + +static void +cmd_enforce_96dpi(); + +static void +cmd_inject_html(); + +static void +cmd_caret_browsing(); + /* vi: set et ts=4: */