[Bug 279652] [patch] wsp.c: Improve multi-finger touchpad usage and allow more configurations
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 279652] [patch] wsp.c: Improve multi-finger touchpad usage and allow more configurations"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 279652] [patch] wsp.c: Improve multi-finger touchpad usage and allow more configurations"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 279652] [patch] wsp.c: Improve multi-finger touchpad usage and allow more configurations"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 279652] [patch] wsp.c: Improve multi-finger touchpad usage and allow more configurations"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 279652] [patch] wsp.c: Improve multi-finger touchpad usage and allow more configurations"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 279652] wsp.c: Improve multi-finger touchpad usage and allow more configurations"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 10 Jun 2024 18:37:50 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279652
Bug ID: 279652
Summary: [patch] wsp.c: Improve multi-finger touchpad usage and
allow more configurations
Product: Base System
Version: 13.3-RELEASE
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: usb
Assignee: usb@FreeBSD.org
Reporter: megamansec@gmail.com
Created attachment 251363
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=251363&action=edit
Allow multi-finger scrolling following a single-click, and add max_finger_area
and max_double_tap_distance tunables.
The wsp driver does not currently correctly allow the movement of the trackpad
using two fingers while a single button is held down: that is to say, during a
single-button click, it is only possible to move the cursor using the same
finger that is clicking.
This patch provides support for the movement using a second finger, which is
in-line with how MacOS supports this trackpad: a single button click can be
moved using either the original finger or a secondary finger on the trackpad
following the first click. It appears that this was originally missed by the
developer, as the comments suggest that the variables holding the position
arrays should be arrays, however they were not:
int16_t pre_pos_x; /* previous position array */
int16_t pre_pos_y; /* previous position array */
This patch makes them arrays of int16_t, in-line with the "finger index data"
and "position array" arrays.
In addition, this patch also creates two tunables:
hw.usb.wsp.max_finger_area
hw.usb.wsp.max_double_tap_distance
max_finger_area is the maximum area that a finger may take up on the trackpad
to be registered as a finger. Previously, it was hardcoded 1200. This value was
too low to register a thumb-click, which MacOS does correctly.
max_double_tap_distance is the maximum distance between two fingers which
permit a two-finger-click to be registered as a double-click. Previously, this
was hardcoded as 2500, and that is left as the default.
Note: this patch follows
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279649.
--
You are receiving this mail because:
You are the assignee for the bug.