]> git.armaanb.net Git - chorizo.git/blob - chorizo.h
draft 8
[chorizo.git] / chorizo.h
1 typedef struct MainWindow MainWindow;
2 struct MainWindow {
3         GtkWidget *notebook;
4         GtkWidget *win;
5 };
6 extern struct MainWindow mw;
7 typedef struct Configuration Configuration;
8 struct Configuration {
9         gboolean cooperative_alone;
10         gboolean noncooperative_instances;
11         gboolean private;
12         gboolean verbose;
13 };
14 extern struct Configuration cfg;
15 extern gboolean switch_tab;
16 extern gboolean switch_tab;
17 extern gint clients;
18 extern int cooperative_pipe_fp;
19 extern gchar *fifopath;
20 extern char **closed_tabs;
21 extern size_t num_closed;
22 gboolean isearch_counted_matches(GtkWidget *widget,guint matches,gpointer data);
23 gboolean quit_if_nothing_active(void);
24 gboolean remote_msg(GIOChannel *channel,GIOCondition condition,gpointer data);
25 void allocfail(void);
26 void client_destroy(GtkWidget *widget,gpointer data);
27 typedef struct Client Client;
28 void set_uri(const char *uri,struct Client *c);
29 WebKitWebView *client_new(const gchar *uri,WebKitWebView *related_wv);
30 WebKitWebView *client_new_request(WebKitWebView *web_view,WebKitNavigationAction *navigation_action,gpointer data);
31 void mkdirp(const char *dir,mode_t mode);
32 void cooperation_setup(void);
33 void changed_load_progress(GObject *obj,GParamSpec *pspec,gpointer data);
34 void changed_favicon(GObject *obj,GParamSpec *pspec,gpointer data);
35 void changed_title(GObject *obj,GParamSpec *pspec,gpointer data);
36 void changed_uri(GObject *obj,GParamSpec *pspec,gpointer data);
37 gboolean crashed_web_view(WebKitWebView *web_view,gpointer data);
38 gboolean decide_policy(WebKitWebView *web_view,WebKitPolicyDecision *decision,WebKitPolicyDecisionType type,gpointer data);
39 gchar *ensure_uri_scheme(const gchar *t);
40 void grab_feeds_finished(GObject *object,GAsyncResult *result,gpointer data);
41 void hover_web_view(WebKitWebView *web_view,WebKitHitTestResult *ht,guint modifiers,gpointer data);
42 void icon_location(GtkEntry *entry,GtkEntryIconPosition icon_pos,GdkEvent *event,gpointer data);
43 void init_default_web_context(void);
44 void isearch(gpointer data,gint direction);
45 void isearch_init(struct Client *c,int direction);
46 void reopen_tab(void);
47 void mainwindow_setup(void);
48 void mainwindow_title(gint idx);
49 void notebook_switch_page(GtkNotebook *nb,GtkWidget *p,guint idx,gpointer data);
50 void show_web_view(WebKitWebView *web_view,gpointer data);
51 void trust_user_certs(WebKitWebContext *wc);
52 void version(void);
53 gboolean download_handle(WebKitDownload *,gchar *,gpointer);
54 gboolean download_handle(WebKitDownload *download,gchar *suggested_filename,gpointer data);
55 void download_click(GtkToolButton *,gpointer);
56 void download_click(GtkToolButton *tb,gpointer data);
57 void download_cancel(GtkMenuItem *,gpointer);
58 void download_cancel(GtkMenuItem *tb,gpointer data);
59 gboolean downloadmanager_delete(GtkWidget *,gpointer);
60 gboolean downloadmanager_delete(GtkWidget *obj,gpointer data);
61 extern gint downloads;
62 gboolean key_downloadmanager(GtkWidget *widget,GdkEvent *event,gpointer data);
63 void changed_download_progress(GObject *obj,GParamSpec *pspec,gpointer data);
64 void download_finished(WebKitDownload *download,gpointer data);
65 void download_start(WebKitWebView *web_view,WebKitDownload *download,gpointer data);
66 typedef struct DownloadItem DownloadItem;
67 const char *download_get_path(struct DownloadItem *payload);
68 void download_hide(GtkMenuItem *tb,gpointer data);
69 void download_delete(GtkMenuItem *tb,gpointer data);
70 void download_copy_url(GtkMenuItem *tb,gpointer data);
71 void download_copy_path(GtkMenuItem *tb,gpointer data);
72 void download_xdg_open(GtkMenuItem *tb,gpointer data);
73 void downloadmanager_setup(void);
74 void downloadmanager_show(void);
75 struct Client {
76         GtkWidget *location;
77         GtkWidget *wsearch;
78         GtkWidget *isearch;
79         GtkWidget *isearch_box;
80         GtkWidget *isearch_matches;
81         GtkWidget *tabicon;
82         GtkWidget *tablabel;
83         GtkWidget *vbox;
84         GtkWidget *web_view;
85         WebKitSettings *settings;
86         gchar *external_handler_uri;
87         gchar *feed_html;
88         gchar *hover_uri;
89 };
90 struct DownloadItem {
91         GtkToolButton *tb;
92         WebKitDownload *download;
93 };
94 gboolean key_common(GtkWidget *widget,GdkEvent *event,gpointer data);
95 void change_tab(int idx,struct Client *c);
96 void reorder_current_tab(int target);
97 gboolean key_isearch(GtkWidget *widget,GdkEvent *event,gpointer data);
98 gboolean key_wsearch(GtkWidget *widget,GdkEvent *event,gpointer data);
99 gboolean key_location(GtkWidget *widget,GdkEvent *event,gpointer data);
100 gboolean key_tablabel(GtkWidget *widget,GdkEvent *event,gpointer data);
101 gboolean key_web_view(GtkWidget *widget,GdkEvent *event,gpointer data);
102 #define INTERFACE 0
103 #define EXPORT_INTERFACE 0
104 #define LOCAL_INTERFACE 0
105 #define EXPORT
106 #define LOCAL static
107 #define PUBLIC
108 #define PRIVATE
109 #define PROTECTED