1
0
mirror of git://git.suckless.org/surf synced 2024-12-12 09:45:32 +00:00

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 hidebackground = FALSE;
#define SETPROP(p, q) { .v = (char *[]){ "/bin/sh", "-c", \
"prop=\"`xprop -id $2 $0 | cut -d '\"' -f 2 | dmenu`\" &&" \
"xprop -id $2 -f $1 8s -set $1 \"$prop\"", \
p, q, winid, NULL } }
#define SETPROP(p, q) { \
.v = (char *[]){ "/bin/sh", "-c", \
"prop=\"`xprop -id $2 $0 | cut -d '\"' -f 2 | dmenu`\" &&" \
"xprop -id $2 -f $1 8s -set $1 \"$prop\"", \
p, q, winid, NULL \
} \
}
/* DOWNLOAD(URI, referer) */
#define DOWNLOAD(d, r) { \
.v = (char *[]){ "/bin/sh", "-c", \
"xterm -e \"wget '$0' \
--load-cookies ~/.surf/cookies.txt \
--user-agent '$1' \
--referer '$2' ; sleep 5\"", d, useragent, NULL } }
"xterm -e \"wget '$0'" \
" --load-cookies ~/.surf/cookies.txt" \
" --user-agent '$1'" \
" --referer '$2' ; sleep 5\"", d, useragent, r, NULL \
} \
}
#define MODKEY GDK_CONTROL_MASK
@ -61,9 +66,10 @@ static Key keys[] = {
{ MODKEY, GDK_slash, spawn, SETPROP("_SURF_FIND", "_SURF_FIND") },
{ MODKEY, GDK_n, find, { .b = TRUE } },
{ 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_c, toggle, { .v = "enable-caret-browsing" } },
{ 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 gboolean showxid = FALSE;
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 *buildpath(const char *path);
@ -359,13 +360,13 @@ drawindicator(Client *c) {
width = c->progress * w->allocation.width / 100;
gc = gdk_gc_new(w->window);
if(strstr(uri, "https://") == uri) {
if(using_proxy) {
if(usingproxy) {
colorname = c->sslfailed? progress_proxy_untrust : progress_proxy_trust;
} else {
colorname = c->sslfailed? progress_untrust : progress_trust;
}
} else {
if(using_proxy) {
if(usingproxy) {
colorname = progress_proxy;
} else {
colorname = progress;
@ -612,10 +613,11 @@ newclient(void) {
g_object_set(G_OBJECT(settings), "user-agent", ua, NULL);
uri = g_strconcat("file://", stylefile, 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), "enable-plugins", plugin, NULL);
g_object_set(G_OBJECT(settings), "enable-scripts", script, NULL);
g_object_set(G_OBJECT(settings), "enable-spatial-navigation", spatialbrowsing, NULL);
g_object_set(G_OBJECT(settings), "auto-load-images", loadimages, NULL);
g_object_set(G_OBJECT(settings), "enable-plugins", enableplugins, NULL);
g_object_set(G_OBJECT(settings), "enable-scripts", enablescripts, NULL);
g_object_set(G_OBJECT(settings), "enable-spatial-navigation",
spatialbrowsing, NULL);
g_free(uri);
@ -651,11 +653,11 @@ newwindow(Client *c, const Arg *arg, gboolean noembed) {
snprintf(tmp, LENGTH(tmp), "%u\n", (int)embed);
cmd[i++] = tmp;
}
if(!script)
if(!enablescripts)
cmd[i++] = "-s";
if(!plugin)
if(!enableplugins)
cmd[i++] = "-p";
if(!loadimage)
if(!loadimages)
cmd[i++] = "-i";
if(showxid)
cmd[i++] = "-x";
@ -843,7 +845,7 @@ setup(void) {
g_object_set(G_OBJECT(s), "proxy-uri", puri, NULL);
soup_uri_free(puri);
g_free(new_proxy);
using_proxy = 1;
usingproxy = 1;
}
}
@ -914,16 +916,20 @@ gettogglestat(Client *c){
gboolean value;
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",
&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);
break;
case 'i':
loadimage = 0;
loadimages = 0;
break;
case 'p':
plugin = 0;
enableplugins = 0;
break;
case 'r':
scriptfile = EARGF(usage());
break;
case 's':
script = 0;
enablescripts = 0;
break;
case 't':
stylefile = EARGF(usage());