QT_QPA_PLATFORM=wayland-egl citra-qt for example, will open 20 windows, one of which (the 16th) is the actual Qt window, all of the other ones being transparent.
Heh, most likely hidden X11 windows that should not be mapped.
Oh.. I'll investigate, when I get home.
Seems like Qt does some very strange things. I have no idea why it creates 20 surfaces, and they all have shell_surface role. It does the same thing under weston, but you just don't see them there since they are invisible.
Neverthless wl_shell is really bad interface for desktop applications anyways. Should use xdg-shell, you can't close individual windows for example from compositor. (It's all controlled by application using the old interface)
This seems to be issue with current wayland implementation on Qt, every QWindow is actually shell-surface (even subwindows).