Hello,
following up on this, I moved forward with the implementation and I have got to a working state. (with still some bugs but usable)
Windows are shown properly, dropdown menus as well, resize and move work.
The implementation is tested on Weston, GnomeShell and some other compositors based on
wlroots. It uses the protocol xdgshell widely adopted in all the compositors as well the
layer shell protocol which is currently adopted by the wlroots compositors and ubuntu shell.
note: To be able to associate submenus to the parent windows i had to make a change to libs-gui:
maybe there are better ways to do it, in case you think it's ok i would proceed to make a PR for libs-gui too
Let me know what you think about it,
cheers
Riccardo