wayland: Implement xdg-toplevel-drag-v1
Summary:
This implements the xdg-toplevel-drag-v1 protocol. The tests have been performed manually using Chromium 132, which relies on it to implement its tab dragging feature.
Demos:
Mutter | Gnome Shell |
---|---|
xdg-toplevel-drag_mutter-poc-1_2024-10-15 | xdg-toplevel-drag_mutter_gnome-shell_demo_2024-10-25 |
Implementation status:
-
Basic window drag triggering -
Exclude the dragged window from event targets -
Event forwarding (window drag vs wayland grabs) -
Offset calculation relative to toplevel geometry -
Attach already mapped windows -
Properly support not-yet-mapped windows -
Disable visibility change animations -
Dnd events stream adaptations
Closes: #3390 (closed)
Edited by Nick Yamane