*<mouse><doubleClickTime>*
Set double click time in milliseconds. Default is 500.
+*<mouse><scrollFactor>*
+ Set scroll factor. Default is 1.0.
+
*<mouse><context name=""><mousebind button="" direction=""><action>*
Multiple *<mousebind>* can exist within one *<context>*; and multiple
*<action>* can exist within one *<mousebind>*
<!-- time is in ms -->
<doubleClickTime>500</doubleClickTime>
+ <scrollFactor>1.0</scrollFactor>
<context name="Frame">
<mousebind button="A-Left" action="Press">
/* mouse */
long doubleclick_time; /* in ms */
struct wl_list mousebinds; /* struct mousebind.link */
+ double scroll_factor;
/* libinput */
struct wl_list libinput_categories;
} else {
wlr_log(WLR_ERROR, "invalid doubleClickTime");
}
+ } else if (!strcasecmp(nodename, "scrollFactor.mouse")) {
+ rc.scroll_factor = atof(content);
} else if (!strcasecmp(nodename, "name.context.mouse")) {
current_mouse_context = content;
current_mousebind = NULL;
init_font_defaults(&rc.font_osd);
rc.doubleclick_time = 500;
+ rc.scroll_factor = 1.0;
rc.repeat_rate = 25;
rc.repeat_delay = 600;
rc.screen_edge_strength = 20;
/* Notify the client with pointer focus of the axis event. */
wlr_seat_pointer_notify_axis(seat->seat, event->time_msec,
- event->orientation, event->delta, event->delta_discrete,
+ event->orientation, rc.scroll_factor * event->delta,
+ round(rc.scroll_factor * event->delta_discrete),
event->source);
}
}