Skip to content

libweston/desktop-xdg-shell: Add tiled orientation states

Marius Vlad requested to merge mvlad/weston:wip/mvlad/xdg-shell-tile-state into main

Patch series to add support in libweston-desktop, or rather libweston now, to include the tiled states from https://gitlab.freedesktop.org/wayland/wayland-protocols/-/blob/main/stable/xdg-shell/xdg-shell.xml#L818-841

As we do not really have a request for these, I've added them as a additional parameter
in weston_desktop_surface_set_size(). Clients will now receive these events in the events array but I haven't included any of that in this patch series. As such, toytoolkit client will have to take these into account now (pretty much same as maximized/fullscreen) -- handle shadows for instance.

Version 2: Moved it a new function rather, and account for client-side decorations like drop shadows. All clients should be moved correctly now.

Version 3: Used bitmask enumeration for tiled states. Clear-out on each update.

Version 4:

  • Removed clearing out the flag to retain the states previously set-up.
  • Let the shell set-up the proper states.
  • Adjust the tiling state on/from other various states.

I did include some key bindings for desktop-shell though which at least shows the simple-* clients working together with our panel and also demonstrates how to use them.

Edited by Marius Vlad

Merge request reports