tsorted functions in alphabetic order. - surf - customized build of surf, the s… | |
git clone git://src.adamsgaard.dk/surf | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit d536cb6fe1eca5e59adfe6cf20c30d43c7f72858 | |
parent 4427474779e21ac3b306ea26b92b7608b7da4331 | |
Author: Enno Boland (Gottox) <[email protected]> | |
Date: Sat, 6 Jun 2009 20:34:55 +0200 | |
sorted functions in alphabetic order. | |
Diffstat: | |
M surf.c | 339 +++++++++++++++--------------… | |
1 file changed, 169 insertions(+), 170 deletions(-) | |
--- | |
diff --git a/surf.c b/surf.c | |
t@@ -59,114 +59,12 @@ static void showurl(Client *c); | |
static void titlechange(WebKitWebView* view, WebKitWebFrame* frame, const gcha… | |
static void updatetitle(Client *c); | |
- | |
-gchar * | |
-geturi(Client *c) { | |
- gchar *uri; | |
- | |
- if(!(uri = (gchar *)webkit_web_view_get_uri(c->view))) | |
- uri = g_strdup("about:blank"); | |
- return uri; | |
-} | |
- | |
-void | |
-showurl(Client *c) { | |
- gchar *uri; | |
- | |
- hidesearch(c); | |
- uri = geturi(c); | |
- gtk_entry_set_text(GTK_ENTRY(c->urlbar), uri); | |
- gtk_widget_show(c->urlbar); | |
- gtk_widget_grab_focus(c->urlbar); | |
-} | |
- | |
-void | |
-hideurl(Client *c) { | |
- gtk_widget_hide(c->urlbar); | |
- gtk_widget_grab_focus(GTK_WIDGET(c->view)); | |
-} | |
- | |
-void | |
-showsearch(Client *c) { | |
- hideurl(c); | |
- gtk_widget_show(c->searchbar); | |
- gtk_widget_grab_focus(c->searchbar); | |
-} | |
- | |
-void | |
-hidesearch(Client *c) { | |
- gtk_widget_hide(c->searchbar); | |
- gtk_widget_grab_focus(GTK_WIDGET(c->view)); | |
-} | |
- | |
void | |
cleanup(void) { | |
while(clients) | |
destroyclient(clients); | |
} | |
-GdkFilterReturn | |
-processx(GdkXEvent *e, GdkEvent *event, gpointer d) { | |
- XPropertyEvent *ev; | |
- Client *c = (Client *)d; | |
- Atom adummy; | |
- int idummy; | |
- unsigned long ldummy; | |
- unsigned char *buf = NULL; | |
- if(((XEvent *)e)->type == PropertyNotify) { | |
- ev = &((XEvent *)e)->xproperty; | |
- if(ignore_once == FALSE && ev->atom == urlprop && ev->state ==… | |
- XGetWindowProperty(dpy, ev->window, urlprop, 0L, BUFSI… | |
- &adummy, &idummy, &ldummy, &ldummy, &buf); | |
- loaduri(c, (gchar *)buf); | |
- XFree(buf); | |
- return GDK_FILTER_REMOVE; | |
- } | |
- } | |
- return GDK_FILTER_CONTINUE; | |
-} | |
- | |
-void | |
-loadfile(const Client *c, const gchar *f) { | |
- GIOChannel *chan = NULL; | |
- GError *e = NULL; | |
- GString *code = g_string_new(""); | |
- GString *uri = g_string_new(f); | |
- gchar *line; | |
- | |
- if(strcmp(f, "-") == 0) { | |
- chan = g_io_channel_unix_new(STDIN_FILENO); | |
- if (chan) { | |
- while(g_io_channel_read_line(chan, &line, NULL, NULL, … | |
- g_string_append(code, line); | |
- g_free(line); | |
- } | |
- webkit_web_view_load_html_string(c->view, code->str, N… | |
- g_io_channel_shutdown(chan, FALSE, NULL); | |
- } | |
- } | |
- else { | |
- g_string_prepend(uri, "file://"); | |
- loaduri(c, uri->str); | |
- } | |
- | |
-} | |
- | |
-void | |
-loaduri(const Client *c, const gchar *uri) { | |
- GString* u = g_string_new(uri); | |
- if(g_strrstr(u->str, ":") == NULL) | |
- g_string_prepend(u, "http://"); | |
- webkit_web_view_load_uri(c->view, u->str); | |
- g_string_free(u, TRUE); | |
-} | |
- | |
-gboolean | |
-download(WebKitWebView *view, GObject *o, gpointer d) { | |
- /* TODO */ | |
- return FALSE; | |
-} | |
- | |
gboolean | |
decidewindow(WebKitWebView *view, WebKitWebFrame *f, | |
WebKitNetworkRequest *r, WebKitWebNavigationAction *n, | |
t@@ -175,89 +73,64 @@ decidewindow(WebKitWebView *view, WebKitWebFrame *f, | |
return TRUE; | |
} | |
-WebKitWebView * | |
-newwindow(WebKitWebView *v, WebKitWebFrame *f, gpointer d) { | |
- /* TODO */ | |
- Client *c = newclient(); | |
- return c->view; | |
-} | |
- | |
void | |
-linkhover(WebKitWebView* page, const gchar* t, const gchar* l, gpointer d) { | |
- Client *c = (Client *)d; | |
+destroyclient(Client *c) { | |
+ Client *p; | |
- if(l) | |
- gtk_window_set_title(GTK_WINDOW(c->win), l); | |
+ gtk_widget_destroy(GTK_WIDGET(webkit_web_view_new())); | |
+ gtk_widget_destroy(c->scroll); | |
+ gtk_widget_destroy(c->urlbar); | |
+ gtk_widget_destroy(c->urllist); | |
+ gtk_widget_destroy(c->searchbar); | |
+ gtk_widget_destroy(c->vbox); | |
+ gtk_widget_destroy(c->win); | |
+ for(p = clients; p && p->next != c; p = p->next); | |
+ if(p) | |
+ p->next = c->next; | |
else | |
- updatetitle(c); | |
+ clients = c->next; | |
+ free(c); | |
+ if(clients == NULL) | |
+ gtk_main_quit(); | |
} | |
void | |
-loadcommit(WebKitWebView *view, WebKitWebFrame *f, gpointer d) { | |
+destroywin(GtkWidget* w, gpointer d) { | |
Client *c = (Client *)d; | |
- gchar *uri; | |
- uri = geturi(c); | |
- ignore_once = TRUE; | |
- XChangeProperty(dpy, GDK_WINDOW_XID(GTK_WIDGET(c->win)->window), urlpr… | |
- XA_STRING, 8, PropModeReplace, (unsigned char *)uri, | |
- strlen(uri) + 1); | |
+ destroyclient(c); | |
} | |
-void | |
-progresschange(WebKitWebView* view, gint p, gpointer d) { | |
- Client *c = (Client *)d; | |
- | |
- c->progress = p; | |
- updatetitle(c); | |
+void die(char *str) { | |
+ fputs(str, stderr); | |
+ exit(EXIT_FAILURE); | |
} | |
-void | |
-updatetitle(Client *c) { | |
- char t[512]; | |
- if(c->progress == 100) | |
- snprintf(t, LENGTH(t), "%s", c->title); | |
- else | |
- snprintf(t, LENGTH(t), "%s [%i%%]", c->title, c->progress); | |
- gtk_window_set_title(GTK_WINDOW(c->win), t); | |
+gboolean | |
+download(WebKitWebView *view, GObject *o, gpointer d) { | |
+ /* TODO */ | |
+ return FALSE; | |
} | |
-void | |
-titlechange(WebKitWebView *v, WebKitWebFrame *f, const gchar *t, gpointer d) { | |
- Client *c = (Client *)d; | |
+gchar * | |
+geturi(Client *c) { | |
+ gchar *uri; | |
- if(c->title) | |
- g_free(c->title); | |
- c->title = g_strdup(t); | |
- updatetitle(c); | |
+ if(!(uri = (gchar *)webkit_web_view_get_uri(c->view))) | |
+ uri = g_strdup("about:blank"); | |
+ return uri; | |
} | |
void | |
-destroywin(GtkWidget* w, gpointer d) { | |
- Client *c = (Client *)d; | |
- | |
- destroyclient(c); | |
+hidesearch(Client *c) { | |
+ gtk_widget_hide(c->searchbar); | |
+ gtk_widget_grab_focus(GTK_WIDGET(c->view)); | |
} | |
void | |
-destroyclient(Client *c) { | |
- Client *p; | |
- | |
- gtk_widget_destroy(GTK_WIDGET(webkit_web_view_new())); | |
- gtk_widget_destroy(c->scroll); | |
- gtk_widget_destroy(c->urlbar); | |
- gtk_widget_destroy(c->urllist); | |
- gtk_widget_destroy(c->searchbar); | |
- gtk_widget_destroy(c->vbox); | |
- gtk_widget_destroy(c->win); | |
- for(p = clients; p && p->next != c; p = p->next); | |
- if(p) | |
- p->next = c->next; | |
- else | |
- clients = c->next; | |
- free(c); | |
- if(clients == NULL) | |
- gtk_main_quit(); | |
+hideurl(Client *c) { | |
+ gtk_widget_hide(c->urlbar); | |
+ gtk_widget_grab_focus(GTK_WIDGET(c->view)); | |
} | |
gboolean | |
t@@ -327,14 +200,61 @@ keypress(GtkWidget* w, GdkEventKey *ev, gpointer d) { | |
return FALSE; | |
} | |
-void setup(void) { | |
- dpy = GDK_DISPLAY(); | |
- urlprop = XInternAtom(dpy, "_SURF_URL", False); | |
+void | |
+linkhover(WebKitWebView* page, const gchar* t, const gchar* l, gpointer d) { | |
+ Client *c = (Client *)d; | |
+ | |
+ if(l) | |
+ gtk_window_set_title(GTK_WINDOW(c->win), l); | |
+ else | |
+ updatetitle(c); | |
} | |
-void die(char *str) { | |
- fputs(str, stderr); | |
- exit(EXIT_FAILURE); | |
+void | |
+loadcommit(WebKitWebView *view, WebKitWebFrame *f, gpointer d) { | |
+ Client *c = (Client *)d; | |
+ gchar *uri; | |
+ | |
+ uri = geturi(c); | |
+ ignore_once = TRUE; | |
+ XChangeProperty(dpy, GDK_WINDOW_XID(GTK_WIDGET(c->win)->window), urlpr… | |
+ XA_STRING, 8, PropModeReplace, (unsigned char *)uri, | |
+ strlen(uri) + 1); | |
+} | |
+ | |
+void | |
+loadfile(const Client *c, const gchar *f) { | |
+ GIOChannel *chan = NULL; | |
+ GError *e = NULL; | |
+ GString *code = g_string_new(""); | |
+ GString *uri = g_string_new(f); | |
+ gchar *line; | |
+ | |
+ if(strcmp(f, "-") == 0) { | |
+ chan = g_io_channel_unix_new(STDIN_FILENO); | |
+ if (chan) { | |
+ while(g_io_channel_read_line(chan, &line, NULL, NULL, … | |
+ g_string_append(code, line); | |
+ g_free(line); | |
+ } | |
+ webkit_web_view_load_html_string(c->view, code->str, N… | |
+ g_io_channel_shutdown(chan, FALSE, NULL); | |
+ } | |
+ } | |
+ else { | |
+ g_string_prepend(uri, "file://"); | |
+ loaduri(c, uri->str); | |
+ } | |
+ | |
+} | |
+ | |
+void | |
+loaduri(const Client *c, const gchar *uri) { | |
+ GString* u = g_string_new(uri); | |
+ if(g_strrstr(u->str, ":") == NULL) | |
+ g_string_prepend(u, "http://"); | |
+ webkit_web_view_load_uri(c->view, u->str); | |
+ g_string_free(u, TRUE); | |
} | |
Client * | |
t@@ -407,6 +327,85 @@ newclient(void) { | |
return c; | |
} | |
+WebKitWebView * | |
+newwindow(WebKitWebView *v, WebKitWebFrame *f, gpointer d) { | |
+ /* TODO */ | |
+ Client *c = newclient(); | |
+ return c->view; | |
+} | |
+ | |
+void | |
+progresschange(WebKitWebView* view, gint p, gpointer d) { | |
+ Client *c = (Client *)d; | |
+ | |
+ c->progress = p; | |
+ updatetitle(c); | |
+} | |
+ | |
+GdkFilterReturn | |
+processx(GdkXEvent *e, GdkEvent *event, gpointer d) { | |
+ XPropertyEvent *ev; | |
+ Client *c = (Client *)d; | |
+ Atom adummy; | |
+ int idummy; | |
+ unsigned long ldummy; | |
+ unsigned char *buf = NULL; | |
+ if(((XEvent *)e)->type == PropertyNotify) { | |
+ ev = &((XEvent *)e)->xproperty; | |
+ if(ignore_once == FALSE && ev->atom == urlprop && ev->state ==… | |
+ XGetWindowProperty(dpy, ev->window, urlprop, 0L, BUFSI… | |
+ &adummy, &idummy, &ldummy, &ldummy, &buf); | |
+ loaduri(c, (gchar *)buf); | |
+ XFree(buf); | |
+ return GDK_FILTER_REMOVE; | |
+ } | |
+ } | |
+ return GDK_FILTER_CONTINUE; | |
+} | |
+ | |
+void setup(void) { | |
+ dpy = GDK_DISPLAY(); | |
+ urlprop = XInternAtom(dpy, "_SURF_URL", False); | |
+} | |
+ | |
+void | |
+showsearch(Client *c) { | |
+ hideurl(c); | |
+ gtk_widget_show(c->searchbar); | |
+ gtk_widget_grab_focus(c->searchbar); | |
+} | |
+ | |
+void | |
+showurl(Client *c) { | |
+ gchar *uri; | |
+ | |
+ hidesearch(c); | |
+ uri = geturi(c); | |
+ gtk_entry_set_text(GTK_ENTRY(c->urlbar), uri); | |
+ gtk_widget_show(c->urlbar); | |
+ gtk_widget_grab_focus(c->urlbar); | |
+} | |
+ | |
+void | |
+titlechange(WebKitWebView *v, WebKitWebFrame *f, const gchar *t, gpointer d) { | |
+ Client *c = (Client *)d; | |
+ | |
+ if(c->title) | |
+ g_free(c->title); | |
+ c->title = g_strdup(t); | |
+ updatetitle(c); | |
+} | |
+ | |
+void | |
+updatetitle(Client *c) { | |
+ char t[512]; | |
+ if(c->progress == 100) | |
+ snprintf(t, LENGTH(t), "%s", c->title); | |
+ else | |
+ snprintf(t, LENGTH(t), "%s [%i%%]", c->title, c->progress); | |
+ gtk_window_set_title(GTK_WINDOW(c->win), t); | |
+} | |
+ | |
int main(int argc, char *argv[]) { | |
gchar *uri = NULL, *file = NULL; | |
Client *c; |