xdg-pip: Add new protocol
This protocol allows applications that display media contents create picture-in-picture windows.
xdg_toplevel surfaces are not suitable for picture-in-picture windows because they need to be excluded from listing in the taskbar or docks and be placed above all other windows. Besides that, the compositor may need to apply a different placement policy for pip windows, for example placing them in the bottom right screen corner, etc.
xdg_pip is built on top of xdg_surface because it gives us support for client-side drop shadows out of the box.
Similar to ordinary toplevels, picture-in-picture windows can be moved and resized.
Signed-off-by: Vlad Zahorodnii vlad.zahorodnii@kde.org
Closes #44
Open questions:
-
Should it be part of the xdg-shell protocol?
No. Having the picture-in-picture surface role defined in a separate protocol is a more flexible design, for example it allows us to supersede the pip protocol with something else if needed without affecting the xdg-shell protocol.