surf-notifications-20230403-665a709.diff - sites - public wiki contents of suck… | |
git clone git://git.suckless.org/sites | |
Log | |
Files | |
Refs | |
--- | |
surf-notifications-20230403-665a709.diff (3843B) | |
--- | |
1 From 3233530cdaa1dc06f007cfa54ee923b66b95dbf2 Mon Sep 17 00:00:00 2001 | |
2 From: Randolph Sapp <[email protected]> | |
3 Date: Mon, 3 Apr 2023 15:29:39 -0500 | |
4 Subject: [PATCH] surf: update notifications patch for latest | |
5 | |
6 Update "notifications" patch for use with surf version | |
7 665a709b522a6fa18c671f1fc41297603292d0e8 | |
8 | |
9 Signed-off-by: Randolph Sapp <[email protected]> | |
10 --- | |
11 config.def.h | 2 ++ | |
12 surf.c | 16 +++++++++++++++- | |
13 2 files changed, 17 insertions(+), 1 deletion(-) | |
14 | |
15 diff --git a/config.def.h b/config.def.h | |
16 index ca77061..12a598d 100644 | |
17 --- a/config.def.h | |
18 +++ b/config.def.h | |
19 @@ -36,6 +36,7 @@ static Parameter defconfig[ParameterLast] = { | |
20 [KioskMode] = { { .i = 0 }, }, | |
21 [LoadImages] = { { .i = 1 }, }, | |
22 [MediaManualPlay] = { { .i = 1 }, }, | |
23 + [Notifications] = { { .i = 0 } }, | |
24 [PreferredLanguages] = { { .v = (char *[]){ NULL } }, }, | |
25 [RunInFullscreen] = { { .i = 0 }, }, | |
26 [ScrollBars] = { { .i = 1 }, }, | |
27 @@ -178,6 +179,7 @@ static Key keys[] = { | |
28 { MODKEY|GDK_SHIFT_MASK, GDK_KEY_s, toggle, { .i = Jav… | |
29 { MODKEY|GDK_SHIFT_MASK, GDK_KEY_i, toggle, { .i = Loa… | |
30 { MODKEY|GDK_SHIFT_MASK, GDK_KEY_b, toggle, { .i = Scr… | |
31 + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_l, toggle, { .i = Not… | |
32 { MODKEY|GDK_SHIFT_MASK, GDK_KEY_t, toggle, { .i = Str… | |
33 { MODKEY|GDK_SHIFT_MASK, GDK_KEY_m, toggle, { .i = Sty… | |
34 { MODKEY|GDK_SHIFT_MASK, GDK_KEY_d, toggle, { .i = Dar… | |
35 diff --git a/surf.c b/surf.c | |
36 index 001f776..7d34c9b 100644 | |
37 --- a/surf.c | |
38 +++ b/surf.c | |
39 @@ -72,6 +72,7 @@ typedef enum { | |
40 KioskMode, | |
41 LoadImages, | |
42 MediaManualPlay, | |
43 + Notifications, | |
44 PreferredLanguages, | |
45 RunInFullscreen, | |
46 ScrollBars, | |
47 @@ -245,7 +246,7 @@ static void clicknewwindow(Client *c, const Arg *a, … | |
48 static void clickexternplayer(Client *c, const Arg *a, WebKitHitTestRes… | |
49 | |
50 static char winid[64]; | |
51 -static char togglestats[11]; | |
52 +static char togglestats[12]; | |
53 static char pagestats[2]; | |
54 static Atom atoms[AtomLast]; | |
55 static Window embed; | |
56 @@ -680,6 +681,7 @@ gettogglestats(Client *c) | |
57 togglestats[7] = curconfig[FrameFlattening].val.i ? 'F' : 'f'; | |
58 togglestats[8] = curconfig[Certificate].val.i ? 'X' : 'x'; | |
59 togglestats[9] = curconfig[StrictTLS].val.i ? 'T' : 't'; | |
60 + togglestats[10] = curconfig[Notifications].val.i ? 'L' : 'l'; | |
61 } | |
62 | |
63 void | |
64 @@ -828,6 +830,9 @@ setparameter(Client *c, int refresh, ParamName p, co… | |
65 webkit_settings_set_media_playback_requires_user_gestur… | |
66 c->settings, a->i); | |
67 break; | |
68 + case Notifications: | |
69 + refresh = 0; | |
70 + return; | |
71 case PreferredLanguages: | |
72 return; /* do nothing */ | |
73 case RunInFullscreen: | |
74 @@ -1035,6 +1040,7 @@ newwindow(Client *c, const Arg *a, int noembed) | |
75 cmd[i++] = scriptfile; | |
76 } | |
77 cmd[i++] = curconfig[JavaScript].val.i ? "-S" : "-s"; | |
78 + cmd[i++] = curconfig[Notifications].val.i ? "-L" : "-l"; | |
79 cmd[i++] = curconfig[StrictTLS].val.i ? "-T" : "-t"; | |
80 if (fulluseragent && g_strcmp0(fulluseragent, "")) { | |
81 cmd[i++] = "-u"; | |
82 @@ -1628,6 +1634,8 @@ permissionrequested(WebKitWebView *v, WebKitPermis… | |
83 else if (webkit_user_media_permission_is_for_video_devi… | |
84 WEBKIT_USER_MEDIA_PERMISSION_REQUEST(r))) | |
85 param = AccessWebcam; | |
86 + } else if (WEBKIT_IS_NOTIFICATION_PERMISSION_REQUEST(r)) { | |
87 + param = Notifications; | |
88 } else { | |
89 return FALSE; | |
90 } | |
91 @@ -2092,6 +2100,12 @@ main(int argc, char *argv[]) | |
92 defconfig[KioskMode].val.i = 1; | |
93 defconfig[KioskMode].prio = 2; | |
94 break; | |
95 + case 'l': | |
96 + defconfig[Notifications].val.i = 0; | |
97 + break; | |
98 + case 'L': | |
99 + defconfig[Notifications].val.i = 1; | |
100 + break; | |
101 case 'm': | |
102 defconfig[Style].val.i = 0; | |
103 defconfig[Style].prio = 2; | |
104 -- | |
105 2.40.0 | |
106 |