xwayland: Fix LeaveNotify for relative pointer
Since commit 20c78f38, we use the relative pointer for enter/leave events.
However, sprite_check_lost_focus() which verifies whether the pointer has left an Xwayland surface still explicitly check for the absolute pointer.
As a result, no LeaveNotify event is emitted anymore now when the pointer crosses from an Xwayland surface to a Wayland native one.
Make sure to check the last slave device against get_pointer_event() as well, not just the absolute pointer.
Signed-off-by: Olivier Fourdan ofourdan@redhat.com Fixes: 20c78f38 - xwayland: use get_pointer_device() for enter/leave handling too
Merge request reports
Activity
changed milestone to %xwayland-21.1.0
This fixes a fix of a fix... testing the XServer really is mission impossible :s
That being said, your commit message makes sense, and so does the change. I won't pretend I can figure out the deeper implication of the change, so the patch is:
Acked-by: Martin Peres <martin.peres@mupuf.org>
Tested it. Fixes previously failing test in KWinFT and xev receives leave events again directly when moving cursor from it to Wayland native surfaces.
Tested-by: Roman Gilg <subdiff@gmail.com> Acked-by: Roman Gilg <subdiff@gmail.com>
Edited by Roman Gilgadded 1 commit
- d7391f38 - xwayland: Fix LeaveNotify for relative pointer
enabled an automatic merge when the pipeline for d7391f38 succeeds