#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