diff options
| author | Marcel Screm <marcel@marcelscrem.com> | 2025-12-28 12:20:32 +0100 |
|---|---|---|
| committer | Marcel Screm <marcel@marcelscrem.com> | 2025-12-28 12:20:32 +0100 |
| commit | 9b35a7d9c3e05d78819421f376f08505edec38d2 (patch) | |
| tree | 5ff2480538817ef6cde9bd18d317fb734ccdcf56 /st.c.rej | |
| parent | 034c96dec581a3a870a6883303dabe2f0bad704f (diff) | |
added scrollback patch
Diffstat (limited to 'st.c.rej')
| -rw-r--r-- | st.c.rej | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/st.c.rej b/st.c.rej new file mode 100644 index 0000000..72ef8d1 --- /dev/null +++ b/st.c.rej @@ -0,0 +1,35 @@ +--- st.c ++++ st.c +@@ -1087,14 +1087,14 @@ tswapscreen(void) + void + kscrollup(const Arg *a) + { +- int n = a->i; ++ float n = a->f; + + if (IS_SET(MODE_ALTSCREEN)) + return; + +- if (n < 0) n = (-n) * term.row; ++ if (n < 0) n = MAX((-n) * term.row, 1); + if (n > TSCREEN.size - term.row - TSCREEN.off) n = TSCREEN.size - term.row - TSCREEN.off; +- while (!TLINE(-n)) --n; ++ while (!TLINE((int)-n)) --n; + TSCREEN.off += n; + selscroll(0, n); + tfulldirt(); +@@ -1104,12 +1104,12 @@ void + kscrolldown(const Arg *a) + { + +- int n = a->i; ++ float n = a->f; + + if (IS_SET(MODE_ALTSCREEN)) + return; + +- if (n < 0) n = (-n) * term.row; ++ if (n < 0) n = MAX((-n) * term.row, 1); + if (n > TSCREEN.off) n = TSCREEN.off; + TSCREEN.off -= n; + selscroll(0, -n); |
