X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=surf.c;h=3e2e2b009181a727ea1a6acf3c83602021672172;hb=a7ea753f93837ee5eed1e2c80b6642d08e6143e0;hp=100a1f095d72069925f4afc9af49435e8cb47eda;hpb=6d9d3ca4e133745925945a00d5e0c881b58c3a62;p=surf.git diff --git a/surf.c b/surf.c index 100a1f0..3e2e2b0 100644 --- a/surf.c +++ b/surf.c @@ -430,7 +430,7 @@ initdownload(WebKitWebView *view, WebKitDownload *o, Client *c) { Arg arg; updatewinid(c); - arg = (Arg)DOWNLOAD((char *)webkit_download_get_uri(o)); + arg = (Arg)DOWNLOAD((char *)webkit_download_get_uri(o), geturi(c)); spawn(c, &arg); return FALSE; } @@ -532,12 +532,13 @@ newclient(void) { if(!(c = calloc(1, sizeof(Client)))) die("Cannot malloc!\n"); + /* Window */ if(embed) { c->win = gtk_plug_new(embed); - } - else { + } else { c->win = gtk_window_new(GTK_WINDOW_TOPLEVEL); + /* TA: 20091214: Despite what the GNOME docs say, the ICCCM * is always correct, so we should still call this function. * But when doing so, we *must* differentiate between a @@ -602,6 +603,7 @@ newclient(void) { gdk_window_set_events(GTK_WIDGET(c->win)->window, GDK_ALL_EVENTS_MASK); gdk_window_add_filter(GTK_WIDGET(c->win)->window, processx, c); webkit_web_view_set_full_content_zoom(c->view, TRUE); + frame = webkit_web_view_get_main_frame(c->view); runscript(frame); settings = webkit_web_view_get_settings(c->view); @@ -613,13 +615,13 @@ newclient(void) { g_object_set(G_OBJECT(settings), "auto-load-images", loadimage, NULL); g_object_set(G_OBJECT(settings), "enable-plugins", plugin, NULL); g_object_set(G_OBJECT(settings), "enable-scripts", script, NULL); - g_object_set(G_OBJECT(settings), "enable-spatial-navigation", SPATIAL_BROWSING, NULL); + g_object_set(G_OBJECT(settings), "enable-spatial-navigation", spatialbrowsing, NULL); g_free(uri); setatom(c, AtomFind, ""); setatom(c, AtomUri, "about:blank"); - if(HIDE_BACKGROUND) + if(hidebackground) webkit_web_view_set_transparent(c->view, TRUE); c->title = NULL;