#
49efa33d |
|
17-Jan-2023 |
PulkoMandy <pulkomandy@pulkomandy.tk> |
ps2 synaptics: implement 'extended W' mode. "Newer" synaptics touchpad support a new mode where they can report more information to the host. In this mode, there is a different packet format for tracking extra data from the touchpad, including a wheel encoder (mousewheel) if available, and multitouch finger tracking. This mode is documented in the Synaptics touchpad interfacing guide (Synaptics document 511-000275-01 Rev. B), but was not yet implemented in our driver. It should help with detecting multiple fingers, or finger position on clickpads to determine right or left click. This change implements the following items from the Synaptics interfacing guide: - Cleanup and clarify the code for features detection to properly report clickpads - Enable "extended W" mode if supported - Process extended W values 0 (mouse wheels, reported in the touchpad_event structure and could be used by input_server for scrolling), 1 (secondary finger), and 2 (finger count) - Fix handling of wValue, which is not always a finger width - Add handling of vValuen which indicates the finger width when wValue doesn't Overall, this should provide the movement_maker with a better picture of what's happening. Also improve tracing to show received packets and the corresponding WValue since that's an important value in identifying which type of packet it is. Unfortunately I currently don't have a laptop with synaptics touchpad to test this with. Change-Id: If334392f4eb2a146955f6c8c897f0ab64d79b8d9 Reviewed-on: https://review.haiku-os.org/c/haiku/+/4425 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk> Reviewed-by: nephele <nep@packageloss.eu>
|
#
5e596efe |
|
15-Jul-2022 |
Augustin Cavalier <waddlesplash@gmail.com> |
Refactor touchpad movement generation by migrating MovementMaker to userland. This considerably overhauls touchpad event generation, simplifying and cleaning it up considerably: * Return the touchpad specifications through the MS_IS_TOUCHPAD ioctl. * There is now a dedicated MS_READ_TOUCHPAD ioctl, as touchpads can either return touchpad_movement structures or mouse_movement ones depending on what mode they are operating in. * Event repeating on timeouts is now handled in MovementMaker and the input_server control thread, so MS_READ_TOUCHPAD takes a timeout value. This means we can drop all the EventProducers. * Use the real floating-point math functions in MovementMaker now that we are running in userland. * Drop unused structures, constants, headers, and other things related to touchpad support. Change-Id: I28cdb28e4100393a9338a8ebb865573cec13fc1e Reviewed-on: https://review.haiku-os.org/c/haiku/+/5455 Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
52a54e1b |
|
11-May-2020 |
Lt-Henry <quiqueiii@gmail.com> |
usb_hid: Enable digitizers to produce button events from tip and barrel switches Change-Id: Ifcf542e6b04f2f210c80528279e70e0fdd1bb4e3 Reviewed-on: https://review.haiku-os.org/c/haiku/+/2685 Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
2c494653 |
|
14-Apr-2010 |
Axel Dörfler <axeld@pinc-software.de> |
* Removed the at_kbd_io and AT keyboard stuff; this is now done within the PS/2 driver, and that driver is using the raw_key_info structure as well. * Renamed kb_mouse_driver.h to keyboard_mouse_driver.h. * Minor cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36267 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2c4946532910e3cc9f66a92228a2334098e6de49 |
|
14-Apr-2010 |
Axel Dörfler <axeld@pinc-software.de> |
* Removed the at_kbd_io and AT keyboard stuff; this is now done within the PS/2 driver, and that driver is using the raw_key_info structure as well. * Renamed kb_mouse_driver.h to keyboard_mouse_driver.h. * Minor cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36267 a95241bf-73f2-0310-859d-f6bbb57e9c96
|