Introduction
Introduction Statistics Contact Development Disclaimer Help
Store modified parameters list - surf - surf browser, a WebKit based browser
git clone git://git.suckless.org/surf
Log
Files
Refs
README
LICENSE
---
commit a0c3c80ee6e48c57e541cfbcaeb1fb0e66121985
parent a8bf2068276e27dcbd2919cb72d926b9f4f3882e
Author: Quentin Rameau <[email protected]>
Date: Sun, 21 May 2017 22:53:56 +0200
Store modified parameters list
Diffstat:
M surf.c | 29 +++++++++++------------------
1 file changed, 11 insertions(+), 18 deletions(-)
---
diff --git a/surf.c b/surf.c
@@ -241,6 +241,7 @@ static GdkDevice *gdkkb;
static char *stylefile;
static const char *useragent;
static Parameter *curconfig;
+static int modparams[ParameterLast];
char *argv0;
static ParamName loadtransient[] = {
@@ -673,41 +674,31 @@ cookiepolicy_set(const WebKitCookieAcceptPolicy p)
void
seturiparameters(Client *c, const char *uri, ParamName *params)
{
- Parameter *config, *newconfig = NULL;
+ Parameter *config, *uriconfig = NULL;
int i, p;
for (i = 0; i < LENGTH(uriparams); ++i) {
if (uriparams[i].uri &&
!regexec(&(uriparams[i].re), uri, 0, NULL, 0)) {
- newconfig = uriparams[i].config;
+ uriconfig = uriparams[i].config;
break;
}
}
- if (!newconfig)
- newconfig = defconfig;
+ curconfig = uriconfig ? uriconfig : defconfig;
for (i = 0; (p = params[i]) != ParameterLast; ++i) {
switch(p) {
+ default: /* FALLTHROUGH */
+ if (!(defconfig[p].prio < curconfig[p].prio ||
+ defconfig[p].prio < modparams[p]))
+ continue;
case Certificate:
case CookiePolicies:
case Style:
- config = (newconfig[p].prio > defconfig[p].prio) ?
- newconfig : defconfig;
- break;
- default:
- if (newconfig[p].prio > defconfig[p].prio)
- config = newconfig;
- else if (curconfig[p].prio > defconfig[p].prio)
- config = defconfig;
- else
- continue;
+ setparameter(c, 0, p, &curconfig[p].val);
}
-
- setparameter(c, 0, p, &config[p].val);
}
-
- curconfig = newconfig;
}
void
@@ -716,6 +707,8 @@ setparameter(Client *c, int refresh, ParamName p, const Arg…
GdkRGBA bgcolor = { 0 };
WebKitSettings *s = webkit_web_view_get_settings(c->view);
+ modparams[p] = curconfig[p].prio;
+
switch (p) {
case AcceleratedCanvas:
webkit_settings_set_enable_accelerated_2d_canvas(s, a->i);
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.