1. 26 Jun, 2019 1 commit
  2. 17 Jun, 2019 1 commit
  3. 13 Jun, 2019 3 commits
  4. 11 Jun, 2019 3 commits
  5. 07 Jun, 2019 1 commit
    • Peter Hutterer's avatar
      Add a new dispatch interface for the Dell Canvas Totem · bf427762
      Peter Hutterer authored
      
      
      This device looks similar to a MT device on the kernel side, but it's not a
      MT device and it's not quite a tablet either. It uses slots to track up to 4
      totems off the same device and the only hint that it's not a MT device is that
      it sends ABS_MT_TOOL_TYPE / MT_TOOL_DIAL.
      
      udev thinks it's a touchscreen and a tablet but we currently init those
      devices as touchscreen (because all wacom tablet touch devices are udev
      tablets+tochscreens). So we need a quirk to hook onto this device.
      
      And we use a completely separate dispatch implementation, because adding the
      behavior to the tablet interface requires so many exceptions that it's easier
      to just add a separate dispatch interface.
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      bf427762
  6. 28 May, 2019 2 commits
    • Peter Hutterer's avatar
      test: don't treat a signal exit as success · 7147d5a2
      Peter Hutterer authored
      WEXITSTATUS() "should be employed only if WIFEXITED returned true", see
      wait(2). If a test failed with an abort, WIFEXITED is false and WEXITSTATUS
      is... undefined? and apparently zero, so test case failures would cause a
      false postive test result.
      
      This doesn't affect a normal test run because check handles the aborts
      correctly, but the valgrind invocation with CK_FORK ended up being handle by
      litest. So with the result that any abort during valgrind was a silent success
      and if there was a memleak in the same process that exited with a signal, the
      memleak would be ignored too.
      
      Fixes #267
      
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      7147d5a2
    • Peter Hutterer's avatar
      test: allow for a LITEST_JOBS environment variable · 9b414fae
      Peter Hutterer authored
      
      
      valgrind struggles with too many parallel jobs, too easy to hit timeouts.
      Let's reduce this for the valgrind runs.
      
      Meson doesn't let us pass arguments through depending on the setup, so let's
      make this an environment value.
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      9b414fae
  7. 27 May, 2019 1 commit
  8. 09 May, 2019 1 commit
    • Peter Hutterer's avatar
      test: make the test case failure output easier to select · 1e73cccf
      Peter Hutterer authored
      
      
      Split the suite and test case name up so it's easier to select with a
      double-click in the terminal. Because usually those tests need to be re-run
      individually and making that easier is a good thing.
      
      Previously:
      :: Failure: ../test/test-tablet.c:4434:touch_arbitration:wacom-cintiq-13hdt-pen-tablet
      
      Now:
      :: Failure: ../test/test-tablet.c:4434: touch_arbitration(wacom-cintiq-13hdt-pen-tablet)
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      1e73cccf
  9. 07 May, 2019 3 commits
  10. 02 May, 2019 1 commit
  11. 11 Apr, 2019 1 commit
  12. 09 Apr, 2019 1 commit
  13. 25 Mar, 2019 1 commit
  14. 22 Mar, 2019 2 commits
  15. 14 Mar, 2019 5 commits
  16. 12 Mar, 2019 2 commits
  17. 19 Feb, 2019 1 commit
    • Henré Botha's avatar
      Reduce button scroll timeout to 38ms · 5dae7aac
      Henré Botha authored
      When using button scrolling, a hardcoded delay of 200 milliseconds between
      button down and scroll events being emitted makes fast scrolling gestures feel
      clunky and sometimes fail entirely. This feature comes from
      xf86-input-mouse, was copied into xf86-input-evdev and reimplemented in
      libinput.
      
      This was, as far as can be determined, to allow right clicks without
      triggering scrolling. libinput now also has distance triggers (2bbf4a01)
      and sends button events if no movement has happened for long clicks,
      regardless of the delay.
      
      The 200ms delay is thus not really necessary anymore, let's drop it to 38ms
      which is just above the 3-event threshold for 8/10/12ms intervals which is
      most devices.
      
      Fixes #237
      
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      5dae7aac
  18. 13 Feb, 2019 3 commits
  19. 31 Jan, 2019 2 commits
    • Peter Hutterer's avatar
      tablet: add tilt-based touch arbitration for screen tablets · f612c1ef
      Peter Hutterer authored
      
      
      If the tilt angle on tip down is not 0 set the touch arbitration to a
      rectangle around the assumed position of the hand. This assumed position is
      right of the tip for a rightwards tilt and left of the tip for a leftwards
      tilt (i.e. left-handed mode). The rectangle is 200x200mm with a 20x50mm
      NW of the tip or NE for left-handed. In other words, if the period below is
      the tip, the rectangle looks like this:
      
          +-----------+                          +-----------+
          | . 	| <- for rightwards tilt   |         . |
          |           |                          |           |
          |           |                          |           |
          |           |    for leftwards tilt -> |           |
          +-----------+                          +-----------+
      
      Touches within that rectangle are canceled, new touches are ignored. As the
      tip moves around the rectangle is updated but touches are only cancelled on
      the original tip down. While the tip is down, new touches are ignored in the
      exclusion area but pre-existing touches are not cancelled.
      
      This is currently only implemented in the fallback interface, i.e. it will
      only work for Cintiqs.
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      f612c1ef
    • Peter Hutterer's avatar
      test: add an additional final libinput_dispatch() · afbb90da
      Peter Hutterer authored
      
      
      After the test device was removed, run one more libinput_dispatch(). This may
      catch some errors that happen due to the device removal that were ignored for
      now.
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      afbb90da
  20. 18 Jan, 2019 1 commit
  21. 03 Oct, 2018 1 commit
  22. 10 Sep, 2018 1 commit
  23. 28 Aug, 2018 2 commits
    • Peter Hutterer's avatar
      test: abort when we detect a touch jump during the tests · 65f890a3
      Peter Hutterer authored
      
      
      We never want to accidentally trigger this one. Where we trigger them on
      purpose, we can swap the log handler out first.
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      65f890a3
    • Peter Hutterer's avatar
      test: drop the sleep_ms argument · 7768d7d9
      Peter Hutterer authored
      
      
      This forces events for every ~10ms now. If we want a slower movement, we need
      more steps - just like a real touchpad does it.
      
      Cocinelle spatch files were variants of:
      	@@
      	expression A, B, C, D, E, F, G, H, I, J, K;
      	@@
      
      	- litest_touch_move_two_touches(A, B, C, D, E, F, G, H, I)
      	+ litest_touch_move_two_touches(A, B, C, D, E, F, G, H)
      
      The only test that needed a real fix was touchpad_no_palm_detect_2fg_scroll,
      it used 12ms before, now it's using 10ms so on the bcm5974 touchpad the second
      finger was a speed-thumb. Increasing the events and thus slowing down the
      pointer means it's a normal finger and the test succeeds again.
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      7768d7d9