pinosaur
/
surf.git
/ commitdiff
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
9d49536
)
sorting functions alphabetical.
author
Enno Boland (tox)
<tox@s01.de>
Wed, 28 Oct 2009 19:43:30 +0000
(20:43 +0100)
committer
Enno Boland (tox)
<tox@s01.de>
Wed, 28 Oct 2009 19:43:30 +0000
(20:43 +0100)
surf.c
patch
|
blob
|
history
diff --git
a/surf.c
b/surf.c
index
fa26a2a
..
bb59493
100644
(file)
--- a/
surf.c
+++ b/
surf.c
@@
-72,6
+72,7
@@
static void cleanup(void);
static void clipboard(Client *c, const Arg *arg);
static void context(WebKitWebView *v, GtkMenu *m, Client *c);
static char *copystr(char **str, const char *src);
static void clipboard(Client *c, const Arg *arg);
static void context(WebKitWebView *v, GtkMenu *m, Client *c);
static char *copystr(char **str, const char *src);
+static WebKitWebView *createwindow(WebKitWebView *v, WebKitWebFrame *f, Client *c);
static gboolean decidedownload(WebKitWebView *v, WebKitWebFrame *f, WebKitNetworkRequest *r, gchar *m, WebKitWebPolicyDecision *p, Client *c);
static gboolean decidewindow(WebKitWebView *v, WebKitWebFrame *f, WebKitNetworkRequest *r, WebKitWebNavigationAction *n, WebKitWebPolicyDecision *p, Client *c);
static void destroyclient(Client *c);
static gboolean decidedownload(WebKitWebView *v, WebKitWebFrame *f, WebKitNetworkRequest *r, gchar *m, WebKitWebPolicyDecision *p, Client *c);
static gboolean decidewindow(WebKitWebView *v, WebKitWebFrame *f, WebKitNetworkRequest *r, WebKitWebNavigationAction *n, WebKitWebPolicyDecision *p, Client *c);
static void destroyclient(Client *c);
@@
-80,8
+81,9
@@
static void die(char *str);
static void download(Client *c, const Arg *arg);
static void drawindicator(Client *c);
static gboolean exposeindicator(GtkWidget *w, GdkEventExpose *e, Client *c);
static void download(Client *c, const Arg *arg);
static void drawindicator(Client *c);
static gboolean exposeindicator(GtkWidget *w, GdkEventExpose *e, Client *c);
-static
char *geturi(Client *c
);
+static
void find(Client *c, const Arg *arg
);
static const char *getatom(Client *c, Atom a);
static const char *getatom(Client *c, Atom a);
+static char *geturi(Client *c);
static gboolean initdownload(WebKitWebView *v, WebKitDownload *o, Client *c);
static void itemclick(GtkMenuItem *mi, Client *c);
static gboolean keypress(GtkWidget *w, GdkEventKey *ev, Client *c);
static gboolean initdownload(WebKitWebView *v, WebKitDownload *o, Client *c);
static void itemclick(GtkMenuItem *mi, Client *c);
static gboolean keypress(GtkWidget *w, GdkEventKey *ev, Client *c);
@@
-92,27
+94,25
@@
static void loaduri(Client *c, const Arg *arg);
static void navigate(Client *c, const Arg *arg);
static Client *newclient(void);
static void newwindow(Client *c, const Arg *arg);
static void navigate(Client *c, const Arg *arg);
static Client *newclient(void);
static void newwindow(Client *c, const Arg *arg);
-static WebKitWebView *createwindow(WebKitWebView *v, WebKitWebFrame *f, Client *c);
static void pasteuri(GtkClipboard *clipboard, const char *text, gpointer d);
static void pasteuri(GtkClipboard *clipboard, const char *text, gpointer d);
-static GdkFilterReturn processx(GdkXEvent *xevent, GdkEvent *event, gpointer d);
static void print(Client *c, const Arg *arg);
static void print(Client *c, const Arg *arg);
+static GdkFilterReturn processx(GdkXEvent *xevent, GdkEvent *event, gpointer d);
static void progresschange(WebKitWebView *v, gint p, Client *c);
static void progresschange(WebKitWebView *v, gint p, Client *c);
-static void reloadcookies();
static void reload(Client *c, const Arg *arg);
static void reload(Client *c, const Arg *arg);
+static void reloadcookies();
static void resize(GtkWidget *w, GtkAllocation *a, Client *c);
static void resize(GtkWidget *w, GtkAllocation *a, Client *c);
-static void s
igchld(int unused
);
+static void s
croll(Client *c, const Arg *arg
);
static void setatom(Client *c, Atom a, const char *v);
static void setup(void);
static void setatom(Client *c, Atom a, const char *v);
static void setup(void);
-static void spawn(Client *c, const Arg *arg);
-static void scroll(Client *c, const Arg *arg);
-static void find(Client *c, const Arg *arg);
+static void sigchld(int unused);
static void source(Client *c, const Arg *arg);
static void source(Client *c, const Arg *arg);
+static void spawn(Client *c, const Arg *arg);
static void stop(Client *c, const Arg *arg);
static void titlechange(WebKitWebView *v, WebKitWebFrame* frame, const char* title, Client *c);
static void stop(Client *c, const Arg *arg);
static void titlechange(WebKitWebView *v, WebKitWebFrame* frame, const char* title, Client *c);
-static void usage(void);
static void update(Client *c);
static void updatedownload(WebKitDownload *o, GParamSpec *pspec, Client *c);
static void updatewinid(Client *c);
static void update(Client *c);
static void updatedownload(WebKitDownload *o, GParamSpec *pspec, Client *c);
static void updatewinid(Client *c);
+static void usage(void);
static void windowobjectcleared(GtkWidget *w, WebKitWebFrame *frame, JSContextRef js, JSObjectRef win, Client *c);
static void zoom(Client *c, const Arg *arg);
static void windowobjectcleared(GtkWidget *w, WebKitWebFrame *frame, JSContextRef js, JSObjectRef win, Client *c);
static void zoom(Client *c, const Arg *arg);
@@
-209,28
+209,10
@@
copystr(char **str, const char *src) {
return tmp;
}
return tmp;
}
-void
-destroyclient(Client *c) {
- int i;
- Client *p;
-
- gtk_widget_destroy(c->indicator);
- gtk_widget_destroy(GTK_WIDGET(c->view));
- gtk_widget_destroy(c->scroll);
- gtk_widget_destroy(c->vbox);
- gtk_widget_destroy(c->win);
- for(i = 0; i < LENGTH(items); i++)
- gtk_widget_destroy(c->items[i]);
- free(c->items);
-
- 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();
+WebKitWebView *
+createwindow(WebKitWebView *v, WebKitWebFrame *f, Client *c) {
+ Client *n = newclient();
+ return n->view;
}
gboolean
}
gboolean
@@
-255,6
+237,30
@@
decidewindow(WebKitWebView *view, WebKitWebFrame *f, WebKitNetworkRequest *r, We
return FALSE;
}
return FALSE;
}
+void
+destroyclient(Client *c) {
+ int i;
+ Client *p;
+
+ gtk_widget_destroy(c->indicator);
+ gtk_widget_destroy(GTK_WIDGET(c->view));
+ gtk_widget_destroy(c->scroll);
+ gtk_widget_destroy(c->vbox);
+ gtk_widget_destroy(c->win);
+ for(i = 0; i < LENGTH(items); i++)
+ gtk_widget_destroy(c->items[i]);
+ free(c->items);
+
+ 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();
+}
+
void
destroywin(GtkWidget* w, Client *c) {
destroyclient(c);
void
destroywin(GtkWidget* w, Client *c) {
destroyclient(c);
@@
-266,6
+272,21
@@
die(char *str) {
exit(EXIT_FAILURE);
}
exit(EXIT_FAILURE);
}
+void
+download(Client *c, const Arg *arg) {
+ char *uri;
+ WebKitNetworkRequest *r;
+ WebKitDownload *dl;
+
+ if(arg->v)
+ uri = (char *)arg->v;
+ else
+ uri = c->linkhover ? c->linkhover : geturi(c);
+ r = webkit_network_request_new(uri);
+ dl = webkit_download_new(r);
+ initdownload(c->view, dl, c);
+}
+
void
drawindicator(Client *c) {
gint width;
void
drawindicator(Client *c) {
gint width;
@@
-296,18
+317,12
@@
exposeindicator(GtkWidget *w, GdkEventExpose *e, Client *c) {
}
void
}
void
-download(Client *c, const Arg *arg) {
- char *uri;
- WebKitNetworkRequest *r;
- WebKitDownload *dl;
+find(Client *c, const Arg *arg) {
+ const char *s;
- if(arg->v)
- uri = (char *)arg->v;
- else
- uri = c->linkhover ? c->linkhover : geturi(c);
- r = webkit_network_request_new(uri);
- dl = webkit_download_new(r);
- initdownload(c->view, dl, c);
+ s = getatom(c, findprop);
+ gboolean forward = *(gboolean *)arg;
+ webkit_web_view_search_text(c->view, s, FALSE, forward, TRUE);
}
const char *
}
const char *
@@
-329,6
+344,15
@@
getatom(Client *c, Atom a) {
return buf;
}
return buf;
}
+char *
+geturi(Client *c) {
+ char *uri;
+
+ if(!(uri = (char *)webkit_web_view_get_uri(c->view)))
+ uri = "about:blank";
+ return uri;
+}
+
gboolean
initdownload(WebKitWebView *view, WebKitDownload *o, Client *c) {
const char *filename;
gboolean
initdownload(WebKitWebView *view, WebKitDownload *o, Client *c) {
const char *filename;
@@
-356,15
+380,6
@@
initdownload(WebKitWebView *view, WebKitDownload *o, Client *c) {
return TRUE;
}
return TRUE;
}
-char *
-geturi(Client *c) {
- char *uri;
-
- if(!(uri = (char *)webkit_web_view_get_uri(c->view)))
- uri = "about:blank";
- return uri;
-}
-
void
itemclick(GtkMenuItem *mi, Client *c) {
int i;
void
itemclick(GtkMenuItem *mi, Client *c) {
int i;
@@
-559,12
+574,6
@@
newwindow(Client *c, const Arg *arg) {
spawn(NULL, &a);
}
spawn(NULL, &a);
}
-WebKitWebView *
-createwindow(WebKitWebView *v, WebKitWebFrame *f, Client *c) {
- Client *n = newclient();
- return n->view;
-}
-
void
pasteuri(GtkClipboard *clipboard, const char *text, gpointer d) {
Arg arg = {.v = text };
void
pasteuri(GtkClipboard *clipboard, const char *text, gpointer d) {
Arg arg = {.v = text };
@@
-572,6
+581,11
@@
pasteuri(GtkClipboard *clipboard, const char *text, gpointer d) {
loaduri((Client *) d, &arg);
}
loaduri((Client *) d, &arg);
}
+void
+print(Client *c, const Arg *arg) {
+ webkit_web_frame_print(webkit_web_view_get_main_frame(c->view));
+}
+
GdkFilterReturn
processx(GdkXEvent *e, GdkEvent *event, gpointer d) {
Client *c = (Client *)d;
GdkFilterReturn
processx(GdkXEvent *e, GdkEvent *event, gpointer d) {
Client *c = (Client *)d;
@@
-597,11
+611,6
@@
processx(GdkXEvent *e, GdkEvent *event, gpointer d) {
return GDK_FILTER_CONTINUE;
}
return GDK_FILTER_CONTINUE;
}
-void
-print(Client *c, const Arg *arg) {
- webkit_web_frame_print(webkit_web_view_get_main_frame(c->view));
-}
-
void
progresschange(WebKitWebView *v, gint p, Client *c) {
c->progress = p;
void
progresschange(WebKitWebView *v, gint p, Client *c) {
c->progress = p;
@@
-634,19
+643,6
@@
reloadcookies() {
g_object_unref(jar);
}
g_object_unref(jar);
}
-void
-scroll(Client *c, const Arg *arg) {
- gdouble v;
- GtkAdjustment *a;
-
- a = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(c->scroll));
- v = gtk_adjustment_get_value(a);
- v += gtk_adjustment_get_step_increment(a) * arg->i;
- v = MAX(v, 0.0);
- v = MIN(v, gtk_adjustment_get_upper(a) - gtk_adjustment_get_page_size(a));
- gtk_adjustment_set_value(a, v);
-}
-
void
resize(GtkWidget *w, GtkAllocation *a, Client *c) {
double zoom;
void
resize(GtkWidget *w, GtkAllocation *a, Client *c) {
double zoom;
@@
-661,10
+657,16
@@
resize(GtkWidget *w, GtkAllocation *a, Client *c) {
}
void
}
void
-sigchld(int unused) {
- if(signal(SIGCHLD, sigchld) == SIG_ERR)
- die("Can't install SIGCHLD handler");
- while(0 < waitpid(-1, NULL, WNOHANG));
+scroll(Client *c, const Arg *arg) {
+ gdouble v;
+ GtkAdjustment *a;
+
+ a = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(c->scroll));
+ v = gtk_adjustment_get_value(a);
+ v += gtk_adjustment_get_step_increment(a) * arg->i;
+ v = MAX(v, 0.0);
+ v = MIN(v, gtk_adjustment_get_upper(a) - gtk_adjustment_get_page_size(a));
+ gtk_adjustment_set_value(a, v);
}
void
}
void
@@
-705,6
+707,13
@@
setup(void) {
reloadcookies();
}
reloadcookies();
}
+void
+sigchld(int unused) {
+ if(signal(SIGCHLD, sigchld) == SIG_ERR)
+ die("Can't install SIGCHLD handler");
+ while(0 < waitpid(-1, NULL, WNOHANG));
+}
+
void
source(Client *c, const Arg *arg) {
Arg a = { .b = FALSE };
void
source(Client *c, const Arg *arg) {
Arg a = { .b = FALSE };
@@
-715,24
+724,6
@@
source(Client *c, const Arg *arg) {
reload(c, &a);
}
reload(c, &a);
}
-void
-find(Client *c, const Arg *arg) {
- const char *s;
-
- s = getatom(c, findprop);
- gboolean forward = *(gboolean *)arg;
- webkit_web_view_search_text(c->view, s, FALSE, forward, TRUE);
-}
-
-void
-stop(Client *c, const Arg *arg) {
- if(c->download)
- webkit_download_cancel(c->download);
- else
- webkit_web_view_stop_loading(c->view);
- c->download = NULL;
-}
-
void
spawn(Client *c, const Arg *arg) {
if(fork() == 0) {
void
spawn(Client *c, const Arg *arg) {
if(fork() == 0) {
@@
-747,15
+738,18
@@
spawn(Client *c, const Arg *arg) {
}
void
}
void
-titlechange(WebKitWebView *v, WebKitWebFrame *f, const char *t, Client *c) {
- c->title = copystr(&c->title, t);
- update(c);
+stop(Client *c, const Arg *arg) {
+ if(c->download)
+ webkit_download_cancel(c->download);
+ else
+ webkit_web_view_stop_loading(c->view);
+ c->download = NULL;
}
void
}
void
-
usage(void
) {
-
fputs("surf - simple browser\n", stderr
);
-
die("usage: surf [-e Window] [-x] [uri]\n"
);
+
titlechange(WebKitWebView *v, WebKitWebFrame *f, const char *t, Client *c
) {
+
c->title = copystr(&c->title, t
);
+
update(c
);
}
void
}
void
@@
-790,6
+784,12
@@
updatewinid(Client *c) {
(int)GDK_WINDOW_XID(GTK_WIDGET(c->win)->window));
}
(int)GDK_WINDOW_XID(GTK_WIDGET(c->win)->window));
}
+void
+usage(void) {
+ fputs("surf - simple browser\n", stderr);
+ die("usage: surf [-e Window] [-x] [uri]\n");
+}
+
void
windowobjectcleared(GtkWidget *w, WebKitWebFrame *frame, JSContextRef js, JSObjectRef win, Client *c) {
JSStringRef jsscript;
void
windowobjectcleared(GtkWidget *w, WebKitWebFrame *frame, JSContextRef js, JSObjectRef win, Client *c) {
JSStringRef jsscript;