xdg-shell: consider using a term other than "unmapping" for server-initiated popup dismissal
When the popup is dismissed, a popup_done event will be sent out, and at the same time the surface will be unmapped. See the xdg_popup.popup_done event for details.
Assuming "unmapped" refers to the same mechanism as mentioned in the xdg_surface
description, a compositor user dismissing a popup is technically racy, as the client might perform a surface commit with a buffer before having a change to acknowledge xdg_popup.popup_done
:
A newly-unmapped surface is considered to have met condition (1) out of the 3 required conditions for mapping a surface if its role surface has not been destroyed, i.e. the client must perform the initial commit again before attaching a buffer.