st

fork of suckless's simple terminal
Index Commits Files Refs README LICENSE
commit 86633ada91d1c7d8be1bf0398caff8a62fb1b805
parent dcfe505d3c97506918d5aff24ab62e17e5f58fdb
Author: CustaiCo <custaico@openmailbox.org>
Date:   Fri,  3 Oct 2014 19:25:21 +0000

patch for bell in st

The XBell() call currently used when a bell is recieved sends a message
to the X server, but if the X server doesn't know how to sound it,
it just gets ignored and I have not been able to find anywhere in x.org's
code a way to configure the action that the server does.

However, if you use XkbBell() then you can have a process listening for
the XkbBellNotifyEvent that is produced and either alert you visually or
play an audio file or whatever you want as your notification. You have
to include one more header file but the function seems to be compiled as
part of Xlib, at least on my installation.

CustaiCo

Diffstat:
Mst.c | 3++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/st.c b/st.c
@@ -27,6 +27,7 @@
 #include <X11/cursorfont.h>
 #include <X11/keysym.h>
 #include <X11/Xft/Xft.h>
+#include <X11/XKBlib.h>
 #include <fontconfig/fontconfig.h>
 #include <wchar.h>
 
@@ -2423,7 +2424,7 @@ tcontrolcode(uchar ascii) {
             if(!(xw.state & WIN_FOCUSED))
                 xseturgency(1);
             if (bellvolume)
-                XBell(xw.dpy, bellvolume);
+                XkbBell(xw.dpy, xw.win, bellvolume, (Atom)NULL);
         }
         break;
     case '\033': /* ESC */