diff options
| author | Enno Boland (Gottox) <gottox@s01.de> | 2009-06-06 20:34:55 +0200 | 
|---|---|---|
| committer | Enno Boland (Gottox) <gottox@s01.de> | 2009-06-06 20:34:55 +0200 | 
| commit | d536cb6fe1eca5e59adfe6cf20c30d43c7f72858 (patch) | |
| tree | df5535163a5ad38b11c1024a9bed36edac1610c6 | |
| parent | 4427474779e21ac3b306ea26b92b7608b7da4331 (diff) | |
| download | surf-d536cb6fe1eca5e59adfe6cf20c30d43c7f72858.tar.gz surf-d536cb6fe1eca5e59adfe6cf20c30d43c7f72858.tar.bz2 surf-d536cb6fe1eca5e59adfe6cf20c30d43c7f72858.zip | |
sorted functions in alphabetic order.
| -rw-r--r-- | surf.c | 339 | 
1 files changed, 169 insertions, 170 deletions
| @@ -59,114 +59,12 @@ static void showurl(Client *c);  static void titlechange(WebKitWebView* view, WebKitWebFrame* frame, const gchar* title, gpointer d);  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 == PropertyNewValue) { -			XGetWindowProperty(dpy, ev->window, urlprop, 0L, BUFSIZ, False, XA_STRING,  -				&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, &e) == G_IO_STATUS_NORMAL) { -				g_string_append(code, line); -				g_free(line); -			} -			webkit_web_view_load_html_string(c->view, code->str, NULL); -			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, @@ -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), urlprop, -			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 @@ -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), urlprop, +			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, &e) == G_IO_STATUS_NORMAL) { +				g_string_append(code, line); +				g_free(line); +			} +			webkit_web_view_load_html_string(c->view, code->str, NULL); +			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 * @@ -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 == PropertyNewValue) { +			XGetWindowProperty(dpy, ev->window, urlprop, 0L, BUFSIZ, False, XA_STRING,  +				&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; | 
