add wlr-foreign-toplevel-management protocol to enumerate and control desktop surfaces
I'm opening this PR to discuss what we need to have in this protocol. I'm not very familiar with writing wayland protocols "the proper way", so any recommendations are very welcome :)
Things I'm not sure about:
-
Thumbnails - some prior art like wayland-wall required the compositor draw the view in a specified place on the screen. However, I think this is better solved if the app could create screenshots of individual windows.
-
Minimizing. When the compositor supports more advanced window minimize animations, it usually needs a place on the screen to minimize towards (think of the magic lamp effect in compiz).
I think this fixes #14 (closed), but I'm not sure whether consensus was reached if we should include window positions or not.