use st-scrollback-mouse-altscreen-20190131-e23acb9

This commit is contained in:
Dennis Lee 2020-06-30 18:01:26 -07:00
parent 222eac739d
commit cf0807b3e9
4 changed files with 15 additions and 9 deletions

View file

@ -228,10 +228,8 @@ static MouseShortcut mshortcuts[] = {
MouseKey mkeys[] = { MouseKey mkeys[] = {
/* button mask function argument */ /* button mask function argument */
{ Button4, ShiftMask, kscrollup, {.i = 1} }, { Button4, XK_NO_MOD, kscrollup, {.i = 1} },
{ Button5, ShiftMask, kscrolldown, {.i = 1} }, { Button5, XK_NO_MOD, kscrolldown, {.i = 1} },
{ Button4, MODKEY, kscrollup, {.i = 1} },
{ Button5, MODKEY, kscrolldown, {.i = 1} },
{ Button4, TERMMOD, zoom, {.f = +1} }, { Button4, TERMMOD, zoom, {.f = +1} },
{ Button5, TERMMOD, zoom, {.f = -1} }, { Button5, TERMMOD, zoom, {.f = -1} },
}; };

5
st.c
View file

@ -1063,6 +1063,11 @@ tnew(int col, int row)
treset(); treset();
} }
int tisaltscr(void)
{
return IS_SET(MODE_ALTSCREEN);
}
void void
tswapscreen(void) tswapscreen(void)
{ {

1
st.h
View file

@ -104,6 +104,7 @@ void sendbreak(const Arg *);
void toggleprinter(const Arg *); void toggleprinter(const Arg *);
int tattrset(int); int tattrset(int);
int tisaltscr(void);
void tnew(int, int); void tnew(int, int);
void tresize(int, int); void tresize(int, int);
void tsetdirtattr(int); void tsetdirtattr(int);

2
x.c
View file

@ -442,6 +442,7 @@ bpress(XEvent *e)
return; return;
} }
if (tisaltscr()) {
for (ms = mshortcuts; ms < mshortcuts + LEN(mshortcuts); ms++) { for (ms = mshortcuts; ms < mshortcuts + LEN(mshortcuts); ms++) {
if (e->xbutton.button == ms->b if (e->xbutton.button == ms->b
&& match(ms->mask, e->xbutton.state)) { && match(ms->mask, e->xbutton.state)) {
@ -449,6 +450,7 @@ bpress(XEvent *e)
return; return;
} }
} }
}
for (mk = mkeys; mk < mkeys + LEN(mkeys); mk++) { for (mk = mkeys; mk < mkeys + LEN(mkeys); mk++) {
if (e->xbutton.button == mk->b if (e->xbutton.button == mk->b