diff options
| author | Marcel Screm <marcel@marcelscrem.com> | 2025-12-28 12:24:41 +0100 |
|---|---|---|
| committer | Marcel Screm <marcel@marcelscrem.com> | 2025-12-28 12:24:41 +0100 |
| commit | e02051e910c77690cb2aaaf12a9ebe4fddfa8309 (patch) | |
| tree | f2a3ae9030caade358e0e2277c9ba212eac01e97 /st.c | |
| parent | 9b35a7d9c3e05d78819421f376f08505edec38d2 (diff) | |
added scrollback-float patch
Diffstat (limited to 'st.c')
| -rw-r--r-- | st.c | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -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); |
