wayland: Unmap popup windows when a popup chain is dismissed

When dismissing a popup grab, always unmap every popup window in the
chain, instead of relying on the surfaces and xdg_popups being
destroyed.

https://bugzilla.gnome.org/show_bug.cgi?id=744452
This commit is contained in:
Jonas Ådahl
2015-02-12 11:13:55 +08:00
parent 768286bffb
commit be77874ec9
6 changed files with 49 additions and 10 deletions

View File

@ -100,6 +100,12 @@ struct _MetaWaylandSurface
MetaWaylandSerial acked_configure_serial;
gboolean has_set_geometry;
/* xdg_popup */
struct {
MetaWaylandPopup *popup;
struct wl_listener destroy_listener;
} popup;
/* wl_subsurface stuff. */
struct {
MetaWaylandSurface *parent;