Introduction
Introduction Statistics Contact Development Disclaimer Help
st-visualbell-20170924-b1338e9.diff - sites - public wiki contents of suckless.…
git clone git://git.suckless.org/sites
Log
Files
Refs
---
st-visualbell-20170924-b1338e9.diff (1194B)
---
1 diff --git a/st.c b/st.c
2 index 7c7ddff..a3dffe5 100644
3 --- a/st.c
4 +++ b/st.c
5 @@ -218,6 +218,7 @@ char *opt_line = NULL;
6 char *opt_name = NULL;
7 char *opt_title = NULL;
8 int oldbutton = 3; /* button event on startup: 3 = release */
9 +int bellon = 0;
10
11 static CSIEscape csiescseq;
12 static STREscape strescseq;
13 diff --git a/st.h b/st.h
14 index 44d4938..24a6eb6 100644
15 --- a/st.h
16 +++ b/st.h
17 @@ -231,6 +231,7 @@ extern char *opt_line;
18 extern char *opt_name;
19 extern char *opt_title;
20 extern int oldbutton;
21 +extern int bellon;
22
23 extern char *usedfont;
24 extern double usedfontsize;
25 diff --git a/x.c b/x.c
26 index 191e5dc..7be81ea 100644
27 --- a/x.c
28 +++ b/x.c
29 @@ -1483,6 +1483,15 @@ void
30 xbell(int vol)
31 {
32 XkbBell(xw.dpy, xw.win, vol, (Atom)NULL);
33 +
34 + /* visual bell*/
35 + if (!bellon) {
36 + bellon = 1;
37 + MODBIT(term.mode, !IS_SET(MODE_REVERSE), MODE_REVERSE);
38 + redraw();
39 + XFlush(xw.dpy);
40 + MODBIT(term.mode, !IS_SET(MODE_REVERSE), MODE_REVERSE);
41 + }
42 }
43
44 unsigned long
45 @@ -1674,7 +1683,12 @@ run(void)
46 (handler[ev.type])(&ev);
47 }
48
49 - draw();
50 + if (bellon) {
51 + bellon = 0;
52 + redraw();
53 + }
54 + else draw();
55 +
56 XFlush(xw.dpy);
57
58 if (xev && !FD_ISSET(xfd, &rfd))
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.