X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=surf.c;h=2247551dcd8981a71a81aa75073ec90811d62adb;hb=b1e9a6e9ab195aef30595ad1fb64417c7879dcb0;hp=3ac76650e82ed1ea9c3b3cf002b8accd7bbe597b;hpb=168da3730fcaabf56f9cb7508cbff1699e5b33b1;p=surf.git diff --git a/surf.c b/surf.c index 3ac7665..2247551 100644 --- a/surf.c +++ b/surf.c @@ -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; @@ -372,8 +372,6 @@ gboolean initdownload(WebKitWebView *view, WebKitDownload *o, Client *c) { const char *filename; char *uri; - WebKitWebBackForwardList *h; - WebKitWebHistoryItem *i; c->download = o; filename = webkit_download_get_suggested_filename(o); @@ -382,9 +380,6 @@ initdownload(WebKitWebView *view, WebKitDownload *o, Client *c) { uri = g_strconcat("file://", dldir, "/", filename, NULL); webkit_download_set_destination_uri(c->download, uri); c->progress = 0; - h = webkit_web_view_get_back_forward_list(c->view); - i = webkit_web_history_item_new_with_data(webkit_download_get_uri(c->download), filename); - webkit_web_back_forward_list_add_item(h, i); g_signal_connect(c->download, "notify::progress", G_CALLBACK(updatedownload), c); g_signal_connect(c->download, "notify::status", G_CALLBACK(updatedownload), c); @@ -434,11 +429,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 +579,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 +602,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 +723,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 +772,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) :