Introduction
Introduction Statistics Contact Development Disclaimer Help
st-scrollback-mouse-altscreen-20200416-5703aa0.diff - sites - public wiki conte…
git clone git://git.suckless.org/sites
Log
Files
Refs
---
st-scrollback-mouse-altscreen-20200416-5703aa0.diff (1967B)
---
1 diff --git a/config.def.h b/config.def.h
2 index 4b3bf15..1986316 100644
3 --- a/config.def.h
4 +++ b/config.def.h
5 @@ -163,8 +163,8 @@ static uint forcemousemod = ShiftMask;
6 */
7 static MouseShortcut mshortcuts[] = {
8 /* mask button function argument …
9 - { ShiftMask, Button4, kscrollup, {.i = 1} },
10 - { ShiftMask, Button5, kscrolldown, {.i = 1} },
11 + { XK_ANY_MOD, Button4, kscrollup, {.i = 1}, …
12 + { XK_ANY_MOD, Button5, kscrolldown, {.i = 1}, …
13 { XK_ANY_MOD, Button2, selpaste, {.i = 0}, …
14 { XK_ANY_MOD, Button4, ttysend, {.s = "\031"} …
15 { XK_ANY_MOD, Button5, ttysend, {.s = "\005"} …
16 diff --git a/st.c b/st.c
17 index f8b6f67..dd4cb31 100644
18 --- st.c
19 +++ st.c
20 @@ -1045,6 +1045,11 @@ tnew(int col, int row)
21 treset();
22 }
23
24 +int tisaltscr(void)
25 +{
26 + return IS_SET(MODE_ALTSCREEN);
27 +}
28 +
29 void
30 tswapscreen(void)
31 {
32 diff --git a/st.h b/st.h
33 index 1332cf1..f9ad815 100644
34 --- st.h
35 +++ st.h
36 @@ -89,6 +89,7 @@ void sendbreak(const Arg *);
37 void toggleprinter(const Arg *);
38
39 int tattrset(int);
40 +int tisaltscr(void);
41 void tnew(int, int);
42 void tresize(int, int);
43 void tsetdirtattr(int);
44 diff --git a/x.c b/x.c
45 index e5f1737..b8fbd7b 100644
46 --- x.c
47 +++ x.c
48 @@ -34,6 +34,7 @@ typedef struct {
49 void (*func)(const Arg *);
50 const Arg arg;
51 uint release;
52 + int altscrn; /* 0: don't care, -1: not alt screen, 1: alt scr…
53 } MouseShortcut;
54
55 typedef struct {
56 @@ -446,6 +447,7 @@ mouseaction(XEvent *e, uint release)
57 for (ms = mshortcuts; ms < mshortcuts + LEN(mshortcuts); ms++) {
58 if (ms->release == release &&
59 ms->button == e->xbutton.button &&
60 + (!ms->altscrn || (ms->altscrn == (tisaltscr() ? 1 :…
61 (match(ms->mod, state) || /* exact or forced */
62 match(ms->mod, state & ~forcemousemod))) {
63 ms->func(&(ms->arg));
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.