Includes, among other things:
- A refactoring towards supporting more than one desktop per window, for an eventual virtual desktops / activities merge
- A scheme for process-internal window ids on Wayland as DND payload so DND in and to the Pager works in the shell
- Implemented various previously missing behavior in WaylandTasksModel such as implicit moves of windows to the current desktop on various actions
- Expanded VirtualDesktopInfo API so the Pager can better abstract over windowing systems
- Implicit internal sharing of VirtualDesktopInfo since there are many more instances now
- Various cleanups
Still missing:
- Fixing the VirtualDesktops data role in the grouping proxy
- The protocol doesn't have desktop creation/destruction yet, so some of the related logic is still missing
- Some FIXME TODOs in the code when I was unhappy with the current KWayland API
This code is largely untested and subject to change.