This may be a feature for the future but for now be honest and don't claim
that button-based scrolling is available, it's not hooked up in the absolute
code path.

https://bugs.freedesktop.org/show_bug.cgi?id=99865

Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
---
 src/evdev.c         | 4 +++-
 test/test-pointer.c | 1 +
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/evdev.c b/src/evdev.c
index d50f9bb..6132d54 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -2688,7 +2688,9 @@ evdev_configure_device(struct evdev_device *device)
                /* want natural-scroll config option */
                device->scroll.natural_scrolling_enabled = true;
                /* want button scrolling config option */
-               device->scroll.want_button = 1;
+               if (libevdev_has_event_code(evdev, EV_REL, REL_X) ||
+                   libevdev_has_event_code(evdev, EV_REL, REL_Y))
+                       device->scroll.want_button = 1;
        }
 
        if (udev_tags & EVDEV_UDEV_TAG_KEYBOARD) {
diff --git a/test/test-pointer.c b/test/test-pointer.c
index 8498da9..06c45b2 100644
--- a/test/test-pointer.c
+++ b/test/test-pointer.c
@@ -2086,6 +2086,7 @@ litest_setup_tests_pointer(void)
        litest_add_for_device("pointer:button", pointer_button_has_no_button, 
LITEST_KEYBOARD);
        litest_add("pointer:scroll", pointer_scroll_wheel, LITEST_WHEEL, 
LITEST_TABLET);
        litest_add("pointer:scroll", pointer_scroll_button, 
LITEST_RELATIVE|LITEST_BUTTON, LITEST_ANY);
+       litest_add("pointer:scroll", pointer_scroll_button_noscroll, 
LITEST_ABSOLUTE|LITEST_BUTTON, LITEST_RELATIVE);
        litest_add("pointer:scroll", pointer_scroll_button_noscroll, 
LITEST_ANY, LITEST_RELATIVE|LITEST_BUTTON);
        litest_add("pointer:scroll", 
pointer_scroll_button_no_event_before_timeout, LITEST_RELATIVE|LITEST_BUTTON, 
LITEST_ANY);
        litest_add("pointer:scroll", pointer_scroll_button_middle_emulation, 
LITEST_RELATIVE|LITEST_BUTTON, LITEST_ANY);
-- 
2.9.3

_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to