This MR doesn't deal with that (which is fine), but then it's not clear to me how an approach based on this design would evolve and how complex it would become to support the popup positioning scenarios we want (and whether it would then be worth it over !6107). I think this may need a bit more exploration to get a more complete picture (or perhaps you already have a good idea of how this would look like?).
I've added changes to implement this, I think it is still quite straightforward, although the wayland_surface wl_subsurface is only used for unmanaged windows and not for child windows at all.