weston/libweston/desktop
Derek Foreman 36c2c4a254 libweston-desktop: Break grabs when a parent surface is destroyed
When a client is killed we don't get a clean dismissal of pop-ups in
construction order. This can lead to a weston_desktop_surface being
destroyed before its child popup is destroyed.

The weston_surface is still alive, so the surface destroy listener can't
save us.

Track grabbed seats in parent surfaces and explicitly break any grabs
that depend on them when the surfaces are destroyed.

Fixes #870

Signed-off-by: Derek Foreman <derek.foreman@collabora.com>
2024-05-21 13:21:35 -05:00
..
client.c libweston/desktop: Update my Copyright 2024-02-11 19:07:39 +01:00
internal.h libweston-desktop: Break grabs when a parent surface is destroyed 2024-05-21 13:21:35 -05:00
libweston-desktop.c libweston/desktop: Update my Copyright 2024-02-11 19:07:39 +01:00
meson.build Move libweston-desktop into libweston 2022-06-28 10:35:52 +00:00
seat.c libweston-desktop: Break grabs when a parent surface is destroyed 2024-05-21 13:21:35 -05:00
surface.c libweston-desktop: Break grabs when a parent surface is destroyed 2024-05-21 13:21:35 -05:00
xdg-shell-v6.c libweston/desktop: Update my Copyright 2024-02-11 19:07:39 +01:00
xdg-shell.c libweston/desktop: Update my Copyright 2024-02-11 19:07:39 +01:00
xwayland.c libweston/desktop: Update my Copyright 2024-02-11 19:07:39 +01:00