I haven't followed discussions for a while. However, I think the following is still how it is: Allowing applications to do this kind of "low-level" window management is not wanted by the community developing Wayland (the protocol and the desktop environments). So unless the Wayland community changes their mind you cannot port your application to Wayland without redesigning these aspects.
In case you haven't come across this infamous Gist (which is probably not up- to-date anymore): https://gist.github.com/probonopd/9feb7c20257af5dd915e3a9f2d1f2277 Maybe something was merged on https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests that could help and just needed to be implemented in the Qt Wayland platform plugin. I somehow doubt it, though. After a brief check I only found https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/247 and https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/249 again which are both closed. There's also https://github.com/KDE/layer-shell-qt/tree/master but last time I checked it had the disadvantage that then your entire application had to use that shell. You may also resort to compositor-specific hacks like https://github.com/KDE/yakuake/blob/master/app/mainwindow.cpp#L157. (This is a KDE application. For a desktop-neutral application something like that doesn't make much sense so. Btw, when I asked KDE devs about this kind of functionality for Syncthing Tray I was also told that this is not wanted. Now I find hacks like that in a KDE app.) _______________________________________________ Interest mailing list [email protected] https://lists.qt-project.org/listinfo/interest
