[PATCH libinput] Allow for a 0 button on button scrolling

Hans de Goede hdegoede at redhat.com
Wed Nov 19 01:49:10 PST 2014


Hi,

On 11/19/2014 07:34 AM, Peter Hutterer wrote:
> This effectively disables the button scrolling, but since 0 is the default
> button for most devices, we should allow setting the default button.
> 
> Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>

Good catch, I've thought about the need to add this exception myself a couple
of times, but clearly I never transformed those thoughts into code :)

Reviewed-by: Hans de Goede <hdegoede at redhat.com>

Regards,

Hans

> ---
>  src/libinput.c | 2 +-
>  src/libinput.h | 2 ++
>  2 files changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/src/libinput.c b/src/libinput.c
> index 202c239..3f5370f 100644
> --- a/src/libinput.c
> +++ b/src/libinput.c
> @@ -1591,7 +1591,7 @@ libinput_device_config_scroll_set_button(struct libinput_device *device,
>  	     LIBINPUT_CONFIG_SCROLL_ON_BUTTON_DOWN) == 0)
>  		return LIBINPUT_CONFIG_STATUS_UNSUPPORTED;
>  
> -	if (!libinput_device_has_button(device, button))
> +	if (button && !libinput_device_has_button(device, button))
>  		return LIBINPUT_CONFIG_STATUS_INVALID;
>  
>  	return device->config.scroll_mode->set_button(device, button);
> diff --git a/src/libinput.h b/src/libinput.h
> index 1536b97..3b39c96 100644
> --- a/src/libinput.h
> +++ b/src/libinput.h
> @@ -2169,6 +2169,8 @@ libinput_device_config_scroll_get_default_mode(struct libinput_device *device);
>   * @note Setting the button does not change the scroll mode. To change the
>   * scroll mode call libinput_device_config_scroll_set_mode().
>   *
> + * If the button is 0, button scrolling is effectively disabled.
> + *
>   * @param device The device to configure
>   * @param button The button which when pressed switches to sending scroll events
>   *
> 


More information about the wayland-devel mailing list