1. 29 Aug, 2018 3 commits
  2. 26 Aug, 2018 1 commit
  3. 22 Aug, 2018 1 commit
    • Kim Lindberger's avatar
      Add quirk to control velocity averaging, disable it by default · 99334e11
      Kim Lindberger authored
      libinput applies averaging to the velocity of most pointer devices. Averaging
      the velocity makes the motion look smooth and may be of benefit to bad input
      devices. For good devices, however, it comes at the unfortunate price of
      decreased accuaracy.
      
      This change turns velocity averaging off by default (sets ntrackers to 2 instead
      of 16) and allows for it to be turned back on via a quirk, for bad devices which
      require it.
      99334e11
  4. 20 Aug, 2018 1 commit
    • Peter Hutterer's avatar
      touchpad: improve pointer jump detection · eca2f8c9
      Peter Hutterer authored
      Previously, we had a hard threshold of 20mm per event frame. That is just
      about achievable by really fast movements (in which case you don't care too
      much about the jumps anyway because you've already hit the edge of the screen).
      
      Sometimes pointer jumps have lower deltas that are achievable even on slower,
      more likely motions. Analysis of finger motion has shown that while a delta
      >7mm per event is possible, jumping _by_ 7mm between two events is unlikely
      and indicates a pointer jump. So let's diff the most recent delta and the
      current delta, if it increases by 7mm between two event frames let's say it's
      a pointer jump and discard it.
      
      Helps with but does not fully resolve:
      libinput/libinput#80
      libinput/libinput#36Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      eca2f8c9
  5. 13 Aug, 2018 9 commits
  6. 10 Aug, 2018 1 commit
  7. 08 Aug, 2018 1 commit
    • Matt Mayfield's avatar
      touchpad: 90-degree scroll helper · bb87a3d9
      Matt Mayfield authored
      This makes two-finger scrolling in straight lines easier, while still
      allowing free/diagonal movement. It works in three stages:
      
      1) Initial movement
         - For the first few millimeters, scroll movements within 30 degrees
           of horizontal or vertical are straightened to 90-degree angles.
         - Scroll movements close to 45 degree diagonals are unchanged.
         - If movement continues very close to straight horizontal or
           vertical, stage 2 begins and the axis lock engages.
         - If movement continues along a diagonal, stage 2 is skipped and
           free scrolling is immediately enabled.
      2) Axis lock
         - If the user scrolls fairly closely to straight vertical, no
           horizontal movement will happen at all, and vice versa.
         - It is possible to switch between straight vertical and straight
           horizontal, and the axis lock will automatically change.
         - If deliberate diagonal movement is detected at any point, stage
           3 begins and the axis lock disengages.
      3) Free scrolling
         - Scrolling is unconstrained until the fingers are lifted.
      bb87a3d9
  8. 06 Aug, 2018 2 commits
  9. 05 Aug, 2018 1 commit
  10. 03 Aug, 2018 5 commits
  11. 02 Aug, 2018 3 commits
  12. 01 Aug, 2018 1 commit
  13. 30 Jul, 2018 1 commit
    • Cuchaz's avatar
      tablet: clear tablet history on tool contact change · 326b2e32
      Cuchaz authored
      On some ELAN tablets we get a coordinate jump in the same frame that we put
      the tip down. The existing axis smoothing causes that jump to be somewhere in
      the middle between the previous and the next coordinates, causing a small
      stroke from the smoothed position to the next. Prevent this by resetting the
      history on tip down/up so we always take that coordinate.
      
      Fixes #94
      Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      326b2e32
  14. 27 Jul, 2018 3 commits
  15. 26 Jul, 2018 1 commit
  16. 19 Jul, 2018 2 commits
    • myfreeweb's avatar
      Add versionsort test · db2dd43c
      myfreeweb authored
      And make local versionsort testable even when the native one is present.
      db2dd43c
    • Peter Hutterer's avatar
      touchpad: don't NONE or HOVERING touches towards the touch · 23d5f2a5
      Peter Hutterer authored
      To trigger this, we'd need 1, 2, 3 fingers down, release fingers 1 and 2 but
      keep 3 down. Then put finger 1 down again. Touches 1 and 3 are alive now,
      touch 2 is in state NONE.
      
      During the thumb detection we took the first touch not in BEGIN and assigned
      it to "first" - this would now be the second touch in state NONE.
      
      Real effect is relatively minimal since we only use the coordinates here.
      
      Fixes #89Signed-off-by: Peter Hutterer's avatarPeter Hutterer <peter.hutterer@who-t.net>
      23d5f2a5
  17. 17 Jul, 2018 1 commit
  18. 16 Jul, 2018 3 commits