aboutsummaryrefslogtreecommitdiffstats
path: root/src/nnn.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nnn.c')
-rw-r--r--src/nnn.c10
1 files changed, 8 insertions, 2 deletions
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