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
This commit is contained in:
		 CustaiCo
					CustaiCo
				
			
				
					committed by
					
						 Roberto E. Vargas Caballero
						Roberto E. Vargas Caballero
					
				
			
			
				
	
			
			
			 Roberto E. Vargas Caballero
						Roberto E. Vargas Caballero
					
				
			
						parent
						
							dcfe505d3c
						
					
				
				
					commit
					86633ada91
				
			
							
								
								
									
										3
									
								
								st.c
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								st.c
									
									
									
									
									
								
							| @@ -27,6 +27,7 @@ | |||||||
| #include <X11/cursorfont.h> | #include <X11/cursorfont.h> | ||||||
| #include <X11/keysym.h> | #include <X11/keysym.h> | ||||||
| #include <X11/Xft/Xft.h> | #include <X11/Xft/Xft.h> | ||||||
|  | #include <X11/XKBlib.h> | ||||||
| #include <fontconfig/fontconfig.h> | #include <fontconfig/fontconfig.h> | ||||||
| #include <wchar.h> | #include <wchar.h> | ||||||
|  |  | ||||||
| @@ -2423,7 +2424,7 @@ tcontrolcode(uchar ascii) { | |||||||
| 			if(!(xw.state & WIN_FOCUSED)) | 			if(!(xw.state & WIN_FOCUSED)) | ||||||
| 				xseturgency(1); | 				xseturgency(1); | ||||||
| 			if (bellvolume) | 			if (bellvolume) | ||||||
| 				XBell(xw.dpy, bellvolume); | 				XkbBell(xw.dpy, xw.win, bellvolume, (Atom)NULL); | ||||||
| 		} | 		} | ||||||
| 		break; | 		break; | ||||||
| 	case '\033': /* ESC */ | 	case '\033': /* ESC */ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user