This commit is contained in:
Enno Boland (tox) 2010-05-09 22:41:11 +02:00
commit f304d0af52
3 changed files with 12 additions and 11 deletions

View File

@ -6,7 +6,8 @@ static char *stylefile = ".surf/style.css";
static char *scriptfile = ".surf/script.js";
static char *cookiefile = ".surf/cookies.txt";
static char *dldir = ".surf/dl/";
static time_t sessiontime = 3600;
static time_t sessiontime = 0;
#define NOBACKGROUND 0
#define SETPROP(p) { .v = (char *[]){ "/bin/sh", "-c", \
"prop=\"`xprop -id $1 $0 | cut -d '\"' -f 2 | dmenu`\" &&" \

View File

@ -7,8 +7,8 @@ VERSION = 0.4
PREFIX = /usr/local
MANPREFIX = ${PREFIX}/share/man
GTKINC=$(shell pkg-config --static --cflags gtk+-2.0 webkit-1.0)
GTKLIB=$(shell pkg-config --static --libs gtk+-2.0 webkit-1.0)
GTKINC=$(shell pkg-config --cflags gtk+-2.0 webkit-1.0)
GTKLIB=$(shell pkg-config --libs gtk+-2.0 webkit-1.0)
# includes and libs

16
surf.c
View File

@ -268,7 +268,7 @@ void
download(Client *c, const Arg *arg) {
char *uri;
WebKitNetworkRequest *r;
WebKitDownload *dl;
WebKitDownload *dl;
if(arg->v)
uri = (char *)arg->v;
@ -434,11 +434,11 @@ linkhover(WebKitWebView *v, const char* t, const char* l, Client *c) {
void
loadstatuschange(WebKitWebView *view, GParamSpec *pspec, Client *c) {
if(c->download)
stop(c, NULL);
switch(webkit_web_view_get_load_status (c->view)) {
case WEBKIT_LOAD_COMMITTED:
setatom(c, uriprop, geturi(c));
if(c->download)
stop(c, NULL);
setatom(c, uriprop, geturi(c));
break;
case WEBKIT_LOAD_FINISHED:
c->progress = 0;
@ -584,6 +584,8 @@ newclient(void) {
g_free(uri);
setatom(c, findprop, "");
setatom(c, uriprop, "");
if(!NOBACKGROUND)
webkit_web_view_set_transparent(c->view, TRUE);
c->download = NULL;
c->title = NULL;
@ -605,9 +607,8 @@ newrequest(SoupSession *s, SoupMessage *msg, gpointer v) {
soup_message_headers_remove(h, "Cookie");
uri = soup_message_get_uri(msg);
if((c = getcookies(uri))) {
if((c = getcookies(uri)))
soup_message_headers_append(h, "Cookie", c);
}
g_signal_connect_after(G_OBJECT(msg), "got-headers", G_CALLBACK(gotheaders), NULL);
}
@ -727,7 +728,7 @@ setcookie(SoupCookie *c) {
SoupDate *e;
SoupCookieJar *j = soup_cookie_jar_text_new(cookiefile, FALSE);
c = soup_cookie_copy(c);
if(c->expires == NULL) {
if(c->expires == NULL && sessiontime) {
e = soup_date_new_from_time_t(time(NULL) + sessiontime);
soup_cookie_set_expires(c, e);
}
@ -776,7 +777,6 @@ setup(void) {
soup_session_remove_feature_by_type(s, soup_cookie_jar_get_type());
g_signal_connect_after(G_OBJECT(s), "request-started", G_CALLBACK(newrequest), NULL);
/* proxy */
if((proxy = getenv("http_proxy")) && strcmp(proxy, "")) {
new_proxy = g_strrstr(proxy, "http://") ? g_strdup(proxy) :