Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 2f37bcbe authored by Prabir Pradhan's avatar Prabir Pradhan
Browse files

Add timestamp smoothening for Bluetooth mice and touchpads

While Bluetooth input devices are expected to produce input events at a
consistent rate, the device may batch together several input events and
send them all at once to Android to avoid excessive Bluetooth
communication. When doing so, if the event timestamps are not processed
correctly by the kernel or the device driver, these batched events will
reach inputflinger with very similar timestamps even though they were
generated at a fixed interval.

To prevent negative user experiences with this type of Bluetooth
batching, we enforce an assumption that all Bluetooth devices generate
events at a maximum rate of 250Hz, which means each successive input
event from a Bluetooth device must have a timestamp that is at least 4
milliseconds later than the preceeding event.

Bug: 257124950
Test: atest inputflinger_tests
Test: manual, with Wacom Intuos S
Test: manual, with Apple Magic Trackpad 2
Test: manual, with Logitech MX Master 3
Test: manual, with Sony DualSense Contoller
Change-Id: Ia32bb594d0897e69796bb39f59fcc067cf487ff2
parent f0ab2c87
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment