From 78e576ae24e224d55e9e63d8fa45689f5fe9f043 Mon Sep 17 00:00:00 2001 From: lvgx Date: Tue, 29 Sep 2020 16:35:59 +0200 Subject: Fix rollover bug (#747) * Fix rollover bug Fixes #743 * Snap to edges in no rollover multiline scroll mode * Style fix --- src/nnn.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/nnn.c b/src/nnn.c index 5110a14..3a03bdb 100644 --- a/src/nnn.c +++ b/src/nnn.c @@ -5973,14 +5973,20 @@ nochange: #if NCURSES_MOUSE_VERSION > 1 /* Scroll up */ if (event.bstate == BUTTON4_PRESSED && ndents && (cfg.rollover || cur)) { - move_cursor((cur + ndents - scroll_lines) % ndents, 0); + if (!cfg.rollover && cur < scroll_lines) + move_cursor(0,0); + else + move_cursor((cur + ndents - scroll_lines) % ndents, 0); break; } /* Scroll down */ if (event.bstate == BUTTON5_PRESSED && ndents && (cfg.rollover || (cur != ndents - 1))) { - move_cursor((cur + scroll_lines) % ndents, 0); + if (!cfg.rollover && cur >= ndents - scroll_lines) + move_cursor(ndents-1, 0); + else + move_cursor((cur + scroll_lines) % ndents, 0); break; } #endif -- cgit v1.2.3-70-g09d2