]> git.mdlowis.com Git - proto/labwc.git/commit
cursor: don't synthesize relative motion events from absolute events
authorJohn Lindgren <john@jlindgren.net>
Sat, 6 Dec 2025 17:49:09 +0000 (12:49 -0500)
committerJohn Lindgren <john@jlindgren.net>
Sun, 7 Dec 2025 06:35:22 +0000 (01:35 -0500)
commit2f37002498ecc53ae0ae3c70a37c9a828333a8d7
treea27f764633d4807b0b26f04b7ce8b68eb3fb10b1
parent10a3281322e857034c1e65494bc1f3a1d0097386
cursor: don't synthesize relative motion events from absolute events

It seems to have been inherited behavior from tinywl, but it's not clear
what purpose it serves, and it causes a couple of issues:

- A new absolute position that's discontinuous with the previous cursor
  position can produce unexpectedly large relative motion deltas. This
  can occur for example when multiple input devices are active, or in
  nested/VM scenarios when the pointer leaves the windowed output and
  re-enters at a different point.

- When the cursor position is locked via constraint, the computed deltas
  continue to get larger as the absolute event position diverges further
  from the locked position. This led to the mouse pointer going crazy in
  applications that use the relative events, such as games under Wine/
  Wayland.
src/input/cursor.c