evdev: always default to the middle button for button-scrolling
authorPeter Hutterer <peter.hutterer@who-t.net>
Tue, 2 Jun 2015 06:32:41 +0000 (16:32 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Tue, 2 Jun 2015 07:22:25 +0000 (17:22 +1000)
The current code only defaulted to the middle button for those devices that
used button scrolling by default, requiring the user to enable button
scrolling _and_ set the button before it is active. This causes some
confusion.

There is no real benefit to leaving the button at 0 when the scroll
method isn't enabled anyway. So always default to the middle button (if
available).

https://bugzilla.redhat.com/show_bug.cgi?id=1227182

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
src/evdev.c

index ed1a9a3..8932b6c 100644 (file)
@@ -1112,14 +1112,7 @@ evdev_scroll_get_default_button(struct libinput_device *device)
 {
        struct evdev_device *evdev = (struct evdev_device *)device;
 
-       if (libevdev_has_property(evdev->evdev, INPUT_PROP_POINTING_STICK))
-               return BTN_MIDDLE;
-
-       /* A device that defaults to button scrolling defaults
-          to BTN_MIDDLE */
-       if (evdev_scroll_get_default_method(device) ==
-               LIBINPUT_CONFIG_SCROLL_ON_BUTTON_DOWN &&
-           libevdev_has_event_code(evdev->evdev, EV_KEY, BTN_MIDDLE))
+       if( libevdev_has_event_code(evdev->evdev, EV_KEY, BTN_MIDDLE))
                return BTN_MIDDLE;
 
        return 0;