mirror of
https://github.com/gnif/LookingGlass.git
synced 2026-08-22 15:11:31 +00:00
[client] cursor: restore Wayland edge synchronization
Keep guest-to-host pointer synchronization active while an attempted surface exit is blocked by the edge of a Wayland output. Continue forwarding relative motion and wait for wl_pointer.leave before marking the cursor outside the window. Distinguish whole-surface releases from exits into letterbox space so the expected asynchronous release callback cannot disable the feedback loop before the pointer is confined again. Treat Wayland pointer capability loss as a real leave so an unrelated inactive callback cannot be mistaken for the intentional release.
This commit is contained in:
@@ -301,6 +301,9 @@ struct CursorState
|
||||
/* true if a pointer exit is waiting for confinement to release */
|
||||
bool exit;
|
||||
|
||||
/* true if a Wayland surface exit is waiting for a real leave */
|
||||
bool surfaceExit;
|
||||
|
||||
/* the local pointer exit target */
|
||||
struct DoublePoint exitPos;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user