X-Git-Url: https://git.danieliu.xyz/?p=surf.git;a=blobdiff_plain;f=config.def.h;h=a29c3884a3ac83c631b1afc531732430866ff1e8;hp=9bdbe0ca1f55a9df4c3d1e824ffb2b1130dea6bb;hb=d3e974f4eafe459990ff9b140d96a6fe568ee6dc;hpb=3c2c0a65250e1415124603cb8d91bff4a657d46a diff --git a/config.def.h b/config.def.h index 9bdbe0c..a29c388 100644 --- a/config.def.h +++ b/config.def.h @@ -10,16 +10,21 @@ static char *cookiefile = "~/.surf/cookies.txt"; /* Webkit default features */ static Parameter defconfig[ParameterLast] = { SETB(AcceleratedCanvas, 1), + SETB(AccessMicrophone, 0), + SETB(AccessWebcam, 0), SETB(Certificate, 0), SETB(CaretBrowsing, 0), SETV(CookiePolicies, "@Aa"), + SETV(DefaultCharset, "UTF-8"), SETB(DiskCache, 1), SETB(DNSPrefetch, 0), + SETB(FileURLsCrossAccess,0), SETI(FontSize, 12), SETB(FrameFlattening, 0), SETB(Geolocation, 0), SETB(HideBackground, 0), SETB(Inspector, 0), + SETB(Java, 1), SETB(JavaScript, 1), SETB(KioskMode, 0), SETB(LoadImages, 1), @@ -30,6 +35,7 @@ static Parameter defconfig[ParameterLast] = { SETB(ScrollBars, 1), SETB(ShowIndicators, 1), SETB(SiteQuirks, 1), + SETB(SmoothScrolling, 0), SETB(SpellChecking, 0), SETV(SpellLanguages, ((char *[]){ "en_US", NULL })), SETB(StrictTLS, 1), @@ -50,23 +56,25 @@ static int winsize[] = { 800, 600 }; static WebKitFindOptions findopts = WEBKIT_FIND_OPTIONS_CASE_INSENSITIVE | WEBKIT_FIND_OPTIONS_WRAP_AROUND; -#define SETPROP(p, q) { \ +#define PROMPT_GO "Go:" +#define PROMPT_FIND "Find:" + +/* SETPROP(readprop, setprop, prompt)*/ +#define SETPROP(r, s, p) { \ .v = (const char *[]){ "/bin/sh", "-c", \ - "prop=\"`xprop -id $2 $0 " \ - "| sed \"s/^$0(STRING) = \\(\\\\\"\\?\\)\\(.*\\)\\1$/\\2/\" " \ - "| xargs -0 printf %b | dmenu`\" &&" \ - "xprop -id $2 -f $1 8s -set $1 \"$prop\"", \ - p, q, winid, NULL \ + "prop=\"$(printf '%b' \"$(xprop -id $1 $2 " \ + "| sed \"s/^$2(STRING) = //;s/^\\\"\\(.*\\)\\\"$/\\1/\")\" " \ + "| dmenu -p \"$4\" -w $1)\" && xprop -id $1 -f $3 8s -set $3 \"$prop\"", \ + "surf-setprop", winid, r, s, p, NULL \ } \ } /* DOWNLOAD(URI, referer) */ -#define DOWNLOAD(d, r) { \ - .v = (const char *[]){ "/bin/sh", "-c", \ - "st -e /bin/sh -c \"curl -g -L -J -O --user-agent '$1'" \ - " --referer '$2' -b $3 -c $3 '$0';" \ - " sleep 5;\"", \ - d, useragent, r, cookiefile, NULL \ +#define DOWNLOAD(u, r) { \ + .v = (const char *[]){ "st", "-e", "/bin/sh", "-c",\ + "curl -g -L -J -O -A \"$1\" -b \"$2\" -c \"$2\"" \ + " -e \"$3\" \"$4\"; read", \ + "surf-download", useragent, cookiefile, r, u, NULL \ } \ } @@ -115,15 +123,15 @@ static SiteSpecific certs[] = { */ static Key keys[] = { /* modifier keyval function arg */ - { MODKEY, GDK_KEY_g, spawn, SETPROP("_SURF_URI", "_SURF_GO") }, - { MODKEY, GDK_KEY_f, spawn, SETPROP("_SURF_FIND", "_SURF_FIND") }, - { MODKEY, GDK_KEY_slash, spawn, SETPROP("_SURF_FIND", "_SURF_FIND") }, + { MODKEY, GDK_KEY_g, spawn, SETPROP("_SURF_URI", "_SURF_GO", PROMPT_GO) }, + { MODKEY, GDK_KEY_f, spawn, SETPROP("_SURF_FIND", "_SURF_FIND", PROMPT_FIND) }, + { MODKEY, GDK_KEY_slash, spawn, SETPROP("_SURF_FIND", "_SURF_FIND", PROMPT_FIND) }, { 0, GDK_KEY_Escape, stop, { 0 } }, { MODKEY, GDK_KEY_c, stop, { 0 } }, - { MODKEY|GDK_SHIFT_MASK, GDK_KEY_r, reload, { .b = 1 } }, - { MODKEY, GDK_KEY_r, reload, { .b = 0 } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_r, reload, { .i = 1 } }, + { MODKEY, GDK_KEY_r, reload, { .i = 0 } }, { MODKEY, GDK_KEY_l, navigate, { .i = +1 } }, { MODKEY, GDK_KEY_h, navigate, { .i = -1 } }, @@ -145,13 +153,14 @@ static Key keys[] = { { MODKEY, GDK_KEY_minus, zoom, { .i = -1 } }, { MODKEY, GDK_KEY_plus, zoom, { .i = +1 } }, - { MODKEY, GDK_KEY_p, clipboard, { .b = 1 } }, - { MODKEY, GDK_KEY_y, clipboard, { .b = 0 } }, + { MODKEY, GDK_KEY_p, clipboard, { .i = 1 } }, + { MODKEY, GDK_KEY_y, clipboard, { .i = 0 } }, { MODKEY, GDK_KEY_n, find, { .i = +1 } }, { MODKEY|GDK_SHIFT_MASK, GDK_KEY_n, find, { .i = -1 } }, { MODKEY|GDK_SHIFT_MASK, GDK_KEY_p, print, { 0 } }, + { MODKEY, GDK_KEY_t, showcert, { 0 } }, { MODKEY|GDK_SHIFT_MASK, GDK_KEY_a, togglecookiepolicy, { 0 } }, { 0, GDK_KEY_F11, togglefullscreen, { 0 } }, @@ -172,9 +181,9 @@ static Key keys[] = { /* target can be OnDoc, OnLink, OnImg, OnMedia, OnEdit, OnBar, OnSel, OnAny */ static Button buttons[] = { /* target event mask button function argument stop event */ - { OnLink, 0, 2, clicknewwindow, { .b = 0 }, 1 }, - { OnLink, MODKEY, 2, clicknewwindow, { .b = 1 }, 1 }, - { OnLink, MODKEY, 1, clicknewwindow, { .b = 1 }, 1 }, + { OnLink, 0, 2, clicknewwindow, { .i = 0 }, 1 }, + { OnLink, MODKEY, 2, clicknewwindow, { .i = 1 }, 1 }, + { OnLink, MODKEY, 1, clicknewwindow, { .i = 1 }, 1 }, { OnAny, 0, 8, clicknavigate, { .i = -1 }, 1 }, { OnAny, 0, 9, clicknavigate, { .i = +1 }, 1 }, { OnMedia, MODKEY, 1, clickexternplayer, { 0 }, 1 },