xdg-shell: don't destroy role resources on unmap, move toplevel fields

Ports 5233801530 and
334bab543d to xdg-shell stable.
This commit is contained in:
emersion 2018-03-27 10:25:02 -04:00
parent 334bab543d
commit 171e28eaff
No known key found for this signature in database
GPG key ID: 0FDE7BE0E88F5E48
3 changed files with 89 additions and 57 deletions

View file

@ -74,9 +74,22 @@ struct wlr_xdg_toplevel {
struct wlr_xdg_surface *base;
struct wlr_xdg_surface *parent;
bool added;
struct wlr_xdg_toplevel_state next; // client protocol requests
struct wlr_xdg_toplevel_state pending; // user configure requests
struct wlr_xdg_toplevel_state current;
char *title;
char *app_id;
struct {
struct wl_signal request_maximize;
struct wl_signal request_fullscreen;
struct wl_signal request_minimize;
struct wl_signal request_move;
struct wl_signal request_resize;
struct wl_signal request_show_window_menu;
} events;
};
struct wlr_xdg_surface_configure {
@ -106,10 +119,6 @@ struct wlr_xdg_surface {
uint32_t configure_next_serial;
struct wl_list configure_list;
// Only for toplevel
char *title;
char *app_id;
bool has_next_geometry;
struct wlr_box next_geometry;
struct wlr_box geometry;
@ -122,13 +131,6 @@ struct wlr_xdg_surface {
struct wl_signal new_popup;
struct wl_signal map;
struct wl_signal unmap;
struct wl_signal request_maximize;
struct wl_signal request_fullscreen;
struct wl_signal request_minimize;
struct wl_signal request_move;
struct wl_signal request_resize;
struct wl_signal request_show_window_menu;
} events;
void *data;