summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzachir <zachir@librem.one>2021-12-25 15:26:00 -0600
committerzachir <zachir@librem.one>2021-12-25 15:26:00 -0600
commit48040450f48f6e5ed5d5d5ffef3021299a095f34 (patch)
tree7ea61ae97f31d9894d0f10cd6d55342aed9f11b1
parent35633d45672d14bd798c478c45d1a17064701aa9 (diff)
allow certain xf86 keys to bypass lockscreen
-rw-r--r--slock.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/slock.c b/slock.c
index 5ae738c..b2a7923 100644
--- a/slock.c
+++ b/slock.c
@@ -16,6 +16,7 @@
#include <sys/types.h>
#include <X11/extensions/Xrandr.h>
#include <X11/keysym.h>
+#include <X11/XF86keysym.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>
@@ -157,6 +158,17 @@ readpw(Display *dpy, struct xrandr *rr, struct lock **locks, int nscreens,
IsPrivateKeypadKey(ksym))
continue;
switch (ksym) {
+ case XF86XK_MonBrightnessUp:
+ case XF86XK_MonBrightnessDown:
+ XSendEvent(dpy, DefaultRootWindow(dpy), True, KeyPressMask, &ev);
+ break;
+ case XF86XK_AudioStop:
+ case XF86XK_AudioPlay:
+ case XF86XK_AudioPrev:
+ case XF86XK_AudioNext:
+ XSendEvent(dpy, locks[0]->root, True, KeyPressMask, &ev);
+ XSendEvent(dpy, DefaultRootWindow(dpy), True, KeyPressMask, &ev);
+ break;
case XK_Return:
passwd[len] = '\0';
errno = 0;