|
|
- From 8d8ca34a8e61733711e23ce43b88435bfdfd4962 Mon Sep 17 00:00:00 2001
- From: knary <theknary@gmail.com>
- Date: Mon, 25 Mar 2019 15:03:15 -0400
- Subject: [PATCH] This patch replaces scriptfile with an array of
- scriptfiles[]. This allows for the inclusion of multiple javascript files
- instead of filling up one file with multiple script plugins.
-
- ---
- config.def.h | 4 +++-
- surf.c | 23 +++++++++++++++--------
- 2 files changed, 18 insertions(+), 9 deletions(-)
-
- diff --git a/config.def.h b/config.def.h
- index 34265f6..7d7d68e 100644
- --- a/config.def.h
- +++ b/config.def.h
- @@ -1,11 +1,13 @@
- /* modifier 0 means no modifier */
- static int surfuseragent = 1; /* Append Surf version to default WebKit user agent */
- static char *fulluseragent = ""; /* Or override the whole user agent string */
- -static char *scriptfile = "~/.surf/script.js";
- static char *styledir = "~/.surf/styles/";
- static char *certdir = "~/.surf/certificates/";
- static char *cachedir = "~/.surf/cache/";
- static char *cookiefile = "~/.surf/cookies.txt";
- +static char *scriptfiles[] = {
- + "~/.surf/script.js",
- +};
-
- /* Webkit default features */
- /* Highest priority value will be used.
- diff --git a/surf.c b/surf.c
- index 2b54e3c..34a75de 100644
- --- a/surf.c
- +++ b/surf.c
- @@ -337,9 +337,11 @@ setup(void)
-
- /* dirs and files */
- cookiefile = buildfile(cookiefile);
- - scriptfile = buildfile(scriptfile);
- cachedir = buildpath(cachedir);
- certdir = buildpath(certdir);
- + for (i = 0; i < LENGTH(scriptfiles); i++) {
- + scriptfiles[i] = buildfile(scriptfiles[i]);
- + }
-
- gdkkb = gdk_seat_get_keyboard(gdk_display_get_default_seat(gdpy));
-
- @@ -945,9 +947,11 @@ runscript(Client *c)
- gchar *script;
- gsize l;
-
- - if (g_file_get_contents(scriptfile, &script, &l, NULL) && l)
- - evalscript(c, "%s", script);
- - g_free(script);
- + for (int i = 0; i < LENGTH(scriptfiles); i++) {
- + if (g_file_get_contents(scriptfiles[i], &script, &l, NULL) && l)
- + evalscript(c, "%s", script);
- + g_free(script);
- + }
- }
-
- void
- @@ -1010,9 +1014,9 @@ newwindow(Client *c, const Arg *a, int noembed)
- cmd[i++] = curconfig[Style].val.i ? "-M" : "-m" ;
- cmd[i++] = curconfig[Inspector].val.i ? "-N" : "-n" ;
- cmd[i++] = curconfig[Plugins].val.i ? "-P" : "-p" ;
- - if (scriptfile && g_strcmp0(scriptfile, "")) {
- + if (scriptfiles[0] && g_strcmp0(scriptfiles[0], "")) {
- cmd[i++] = "-r";
- - cmd[i++] = scriptfile;
- + cmd[i++] = scriptfiles[0];
- }
- cmd[i++] = curconfig[JavaScript].val.i ? "-S" : "-s";
- cmd[i++] = curconfig[StrictTLS].val.i ? "-T" : "-t";
- @@ -1076,9 +1080,12 @@ cleanup(void)
- close(pipein[0]);
- close(pipeout[1]);
- g_free(cookiefile);
- - g_free(scriptfile);
- g_free(stylefile);
- g_free(cachedir);
- + for (int i = 0; i < LENGTH(scriptfiles); i++) {
- + g_free(scriptfiles[i]);
- + }
- +
- XCloseDisplay(dpy);
- }
-
- @@ -2067,7 +2074,7 @@ main(int argc, char *argv[])
- defconfig[Plugins].prio = 2;
- break;
- case 'r':
- - scriptfile = EARGF(usage());
- + scriptfiles[0] = EARGF(usage());
- break;
- case 's':
- defconfig[JavaScript].val.i = 0;
- --
- 2.21.0
-
|