Fix some styling in the config.def.h, fix the DOWNLOAD macro and unify the

variable naming a bit.
This commit is contained in:
Christoph Lohmann 2012-11-20 16:02:57 +01:00
parent a7ea753f93
commit 5501d75d2c
3 changed files with 52 additions and 32 deletions

8
TODO.md Normal file
View file

@ -0,0 +1,8 @@
# TODO
* suckless adblocking
* integrate the WebKitWebInspector API
* make scrollbars a switch and allow them to be disabled
* implement fullscreen mode (F11)
* replace webkit with something sane

View file

@ -20,18 +20,23 @@ static int indicator_thickness = 2;
static Bool spatialbrowsing = TRUE; static Bool spatialbrowsing = TRUE;
static Bool hidebackground = FALSE; static Bool hidebackground = FALSE;
#define SETPROP(p, q) { .v = (char *[]){ "/bin/sh", "-c", \ #define SETPROP(p, q) { \
.v = (char *[]){ "/bin/sh", "-c", \
"prop=\"`xprop -id $2 $0 | cut -d '\"' -f 2 | dmenu`\" &&" \ "prop=\"`xprop -id $2 $0 | cut -d '\"' -f 2 | dmenu`\" &&" \
"xprop -id $2 -f $1 8s -set $1 \"$prop\"", \ "xprop -id $2 -f $1 8s -set $1 \"$prop\"", \
p, q, winid, NULL } } p, q, winid, NULL \
} \
}
/* DOWNLOAD(URI, referer) */ /* DOWNLOAD(URI, referer) */
#define DOWNLOAD(d, r) { \ #define DOWNLOAD(d, r) { \
.v = (char *[]){ "/bin/sh", "-c", \ .v = (char *[]){ "/bin/sh", "-c", \
"xterm -e \"wget '$0' \ "xterm -e \"wget '$0'" \
--load-cookies ~/.surf/cookies.txt \ " --load-cookies ~/.surf/cookies.txt" \
--user-agent '$1' \ " --user-agent '$1'" \
--referer '$2' ; sleep 5\"", d, useragent, NULL } } " --referer '$2' ; sleep 5\"", d, useragent, r, NULL \
} \
}
#define MODKEY GDK_CONTROL_MASK #define MODKEY GDK_CONTROL_MASK
@ -61,9 +66,10 @@ static Key keys[] = {
{ MODKEY, GDK_slash, spawn, SETPROP("_SURF_FIND", "_SURF_FIND") }, { MODKEY, GDK_slash, spawn, SETPROP("_SURF_FIND", "_SURF_FIND") },
{ MODKEY, GDK_n, find, { .b = TRUE } }, { MODKEY, GDK_n, find, { .b = TRUE } },
{ MODKEY|GDK_SHIFT_MASK,GDK_n, find, { .b = FALSE } }, { MODKEY|GDK_SHIFT_MASK,GDK_n, find, { .b = FALSE } },
{ MODKEY, GDK_v, toggle, { .v = "enable-plugins" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_c, toggle, { .v = "enable-caret-browsing" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_i, toggle, { .v = "auto-load-images" } }, { MODKEY|GDK_SHIFT_MASK,GDK_i, toggle, { .v = "auto-load-images" } },
{ MODKEY, GDK_c, toggle, { .v = "enable-caret-browsing" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_s, toggle, { .v = "enable-scripts" } }, { MODKEY|GDK_SHIFT_MASK,GDK_s, toggle, { .v = "enable-scripts" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_v, toggle, { .v = "enable-plugins" } },
}; };

50
surf.c
View file

@ -78,7 +78,8 @@ static Client *clients = NULL;
static GdkNativeWindow embed = 0; static GdkNativeWindow embed = 0;
static gboolean showxid = FALSE; static gboolean showxid = FALSE;
static char winid[64]; static char winid[64];
static gboolean loadimage = 1, plugin = 1, script = 1, using_proxy = 0; static gboolean loadimages = 1, enableplugins = 1, enablescripts = 1,
usingproxy = 0;
static char togglestat[5]; static char togglestat[5];
static char *buildpath(const char *path); static char *buildpath(const char *path);
@ -359,13 +360,13 @@ drawindicator(Client *c) {
width = c->progress * w->allocation.width / 100; width = c->progress * w->allocation.width / 100;
gc = gdk_gc_new(w->window); gc = gdk_gc_new(w->window);
if(strstr(uri, "https://") == uri) { if(strstr(uri, "https://") == uri) {
if(using_proxy) { if(usingproxy) {
colorname = c->sslfailed? progress_proxy_untrust : progress_proxy_trust; colorname = c->sslfailed? progress_proxy_untrust : progress_proxy_trust;
} else { } else {
colorname = c->sslfailed? progress_untrust : progress_trust; colorname = c->sslfailed? progress_untrust : progress_trust;
} }
} else { } else {
if(using_proxy) { if(usingproxy) {
colorname = progress_proxy; colorname = progress_proxy;
} else { } else {
colorname = progress; colorname = progress;
@ -612,10 +613,11 @@ newclient(void) {
g_object_set(G_OBJECT(settings), "user-agent", ua, NULL); g_object_set(G_OBJECT(settings), "user-agent", ua, NULL);
uri = g_strconcat("file://", stylefile, NULL); uri = g_strconcat("file://", stylefile, NULL);
g_object_set(G_OBJECT(settings), "user-stylesheet-uri", uri, NULL); g_object_set(G_OBJECT(settings), "user-stylesheet-uri", uri, NULL);
g_object_set(G_OBJECT(settings), "auto-load-images", loadimage, NULL); g_object_set(G_OBJECT(settings), "auto-load-images", loadimages, NULL);
g_object_set(G_OBJECT(settings), "enable-plugins", plugin, NULL); g_object_set(G_OBJECT(settings), "enable-plugins", enableplugins, NULL);
g_object_set(G_OBJECT(settings), "enable-scripts", script, NULL); g_object_set(G_OBJECT(settings), "enable-scripts", enablescripts, NULL);
g_object_set(G_OBJECT(settings), "enable-spatial-navigation", spatialbrowsing, NULL); g_object_set(G_OBJECT(settings), "enable-spatial-navigation",
spatialbrowsing, NULL);
g_free(uri); g_free(uri);
@ -651,11 +653,11 @@ newwindow(Client *c, const Arg *arg, gboolean noembed) {
snprintf(tmp, LENGTH(tmp), "%u\n", (int)embed); snprintf(tmp, LENGTH(tmp), "%u\n", (int)embed);
cmd[i++] = tmp; cmd[i++] = tmp;
} }
if(!script) if(!enablescripts)
cmd[i++] = "-s"; cmd[i++] = "-s";
if(!plugin) if(!enableplugins)
cmd[i++] = "-p"; cmd[i++] = "-p";
if(!loadimage) if(!loadimages)
cmd[i++] = "-i"; cmd[i++] = "-i";
if(showxid) if(showxid)
cmd[i++] = "-x"; cmd[i++] = "-x";
@ -843,7 +845,7 @@ setup(void) {
g_object_set(G_OBJECT(s), "proxy-uri", puri, NULL); g_object_set(G_OBJECT(s), "proxy-uri", puri, NULL);
soup_uri_free(puri); soup_uri_free(puri);
g_free(new_proxy); g_free(new_proxy);
using_proxy = 1; usingproxy = 1;
} }
} }
@ -914,16 +916,20 @@ gettogglestat(Client *c){
gboolean value; gboolean value;
WebKitWebSettings *settings = webkit_web_view_get_settings(c->view); WebKitWebSettings *settings = webkit_web_view_get_settings(c->view);
togglestat[4] = '\0';
g_object_get(G_OBJECT(settings), "auto-load-images", &value, NULL);
togglestat[0] = value?'I':'i';
g_object_get(G_OBJECT(settings), "enable-scripts", &value, NULL);
togglestat[1] = value?'S':'s';
g_object_get(G_OBJECT(settings), "enable-plugins", &value, NULL);
togglestat[2] = value?'V':'v';
g_object_get(G_OBJECT(settings), "enable-caret-browsing", g_object_get(G_OBJECT(settings), "enable-caret-browsing",
&value, NULL); &value, NULL);
togglestat[3] = value?'C':'c'; togglestat[0] = value? 'C': 'c';
g_object_get(G_OBJECT(settings), "auto-load-images", &value, NULL);
togglestat[1] = value? 'I': 'i';
g_object_get(G_OBJECT(settings), "enable-scripts", &value, NULL);
togglestat[2] = value? 'S': 's';
g_object_get(G_OBJECT(settings), "enable-plugins", &value, NULL);
togglestat[3] = value? 'V': 'v';
togglestat[4] = '\0';
} }
@ -995,16 +1001,16 @@ main(int argc, char *argv[]) {
embed = strtol(EARGF(usage()), NULL, 0); embed = strtol(EARGF(usage()), NULL, 0);
break; break;
case 'i': case 'i':
loadimage = 0; loadimages = 0;
break; break;
case 'p': case 'p':
plugin = 0; enableplugins = 0;
break; break;
case 'r': case 'r':
scriptfile = EARGF(usage()); scriptfile = EARGF(usage());
break; break;
case 's': case 's':
script = 0; enablescripts = 0;
break; break;
case 't': case 't':
stylefile = EARGF(usage()); stylefile = EARGF(usage());