Skip to content

Server side cursor icons based on action

David Edmundson requested to merge work/d_ed/dnd_cursors_server_side into master

The current state of D&D in Wayland is not great

  • We don't send a leave event to the client, and the client then can update the cursor icon to the appropriate action

This breaks a few clients, it caused issues for Chrome. It is a bit weird that a client has pointer not left, even though it doesn't get pointer events.

  • Other compositors do send a leave, but then have clients update the drag icon

This also makes no sense at all, if the compositor has the grab, it should be in charge of the cursor. It breaks all toolkits that use cursor_shape protocol (Qt!) which is why we don't do it.

This is an attempt to fix both problems by sending the leave to clients, and whilst the compositor has a grab have the compositor being in charge of the cursor - similar to when we perform an interactive resize.

Edited by David Edmundson

Merge request reports

Loading