xdg-shell: Add xdg_popup.set_parent

This is meant to make it easier for toolkits to provide interoperability
measures between xdg_popup surfaces and non xdg_surface popup parents,
e.g. layer_surface_v1.

The existing mechanism to specify the parent surface using "some other
protocol" breaks encapsulation as creating a child window requires actions
to be performed on the parent window, requiring client code for the child
popup window to be aware of the parent types.

Even if that is papered out, we will end up with divergent
code paths for presenting popups in toolkits, which breaks encapsulation
and becomes major blocker for shipping out-of-tree custom shell plugins.

Signed-off-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
3 jobs for work/zzag/xdg-popup-set-parent in 49 seconds (queued for 4 seconds)