A single mouse event "leaks" into chained clients when moving back
Let's say I have three chained clients like this:
+---+
| C |
+---+
+---++---+
| A || B |
+---++---+
The mouse is connected to A, which then has a client declaration for B, which then has a client declaration for C.
When the mouse is moved from A to B to C, things work as expected. When the mouse moves back from C to B, that works fine. However, when the mouse moves from B to A, the mouse pointer in C (which at this point is at the bottom of the screen, where it was left after B took control back) moves by an amount that seems to be equal to the mouse event that crossed over from B to A (to the left). In other words, somehow, the mouse events are momentarily directed to C again when crossing back from B to A.
This only happens once. Moving back to B and again to A does not leak any events to C. It's only the first time after leaving C, then leaving B, that an event leaks. To make it happen again, I need to move the mouse all the way to C one more time.
Could you add which backends are being used on the three devices?
This is running on KDE Plasma Wayland on all three machines, with the default backends, which it reports as:
[2025-11-02T12:03:27Z INFO input_emulation] using emulation backend: libei
[2025-11-02T12:03:28Z INFO input_capture] using capture backend: input-capture-portal