Add scroll method libinput option

<libinput>
  <device>
    <scrollMethod>none|twofinger|edge</scrollMethod>
  </device>
</libinput>

Fixes: #2766
This commit is contained in:
Consolatis 2025-05-27 14:19:21 +02:00 committed by Hiroaki Yamamoto
parent 8ba14891fa
commit fdab272bdc
6 changed files with 41 additions and 0 deletions

View file

@ -810,6 +810,19 @@ fill_libinput_category(char *nodename, char *content, struct parser_state *state
} else {
wlr_log(WLR_ERROR, "invalid clickMethod");
}
} else if (!strcasecmp(nodename, "scrollMethod")) {
if (!strcasecmp(content, "none")) {
state->current_libinput_category->scroll_method =
LIBINPUT_CONFIG_SCROLL_NO_SCROLL;
} else if (!strcasecmp(content, "edge")) {
state->current_libinput_category->scroll_method =
LIBINPUT_CONFIG_SCROLL_EDGE;
} else if (!strcasecmp(content, "twofinger")) {
state->current_libinput_category->scroll_method =
LIBINPUT_CONFIG_SCROLL_2FG;
} else {
wlr_log(WLR_ERROR, "invalid scrollMethod");
}
} else if (!strcasecmp(nodename, "sendEventsMode")) {
state->current_libinput_category->send_events_mode =
get_send_events_mode(content);