scroll
teken_pos_t *d, bool scroll)
if (!scroll)
} else if (scroll) {
bool scroll = false;
scroll = true;
efi_text_copy_line(state, ncol, &s, &d, scroll);
{ "z", scroll, M|STRLIST, 0, 0 },
int scroll(void *);
if (r->scroll.enable_vert || r->scroll.enable_hor) {
r_vscroll_detect(r, &r->scroll, &action0);
if (r->scroll.enable_vert || r->scroll.enable_hor) {
r_vscroll(&r->scroll, &action2);
if (r->scroll.state == SCROLL_NOTSCROLLING)
r_init_scroll(struct quirks *q, struct scroll *scroll)
*scroll = (struct scroll) {
scroll->enable_vert = opt_virtual_scroll;
quirks_get_bool(q, MOUSED_VIRTUAL_SCROLL_ENABLE, &scroll->enable_vert);
scroll->enable_hor = opt_hvirtual_scroll;
quirks_get_bool(q, MOUSED_HOR_VIRTUAL_SCROLL_ENABLE, &scroll->enable_hor);
scroll->speed = opt_scroll_speed;
quirks_get_uint32(q, MOUSED_VIRTUAL_SCROLL_SPEED, &scroll->speed);
scroll->threshold = opt_scroll_threshold;
quirks_get_uint32(q, MOUSED_VIRTUAL_SCROLL_THRESHOLD, &scroll->threshold);
r_init_scroll(q, &r->scroll);
r_vscroll_detect(struct rodent *r, struct scroll *sc, mousestatus_t *act)
r_vscroll(struct scroll *sc, mousestatus_t *act)
struct scroll scroll; /* virtual scroll state */
static void r_vscroll_detect(struct rodent *r, struct scroll *sc,
static void r_vscroll(struct scroll *sc, mousestatus_t *act);