mirror of
https://github.com/labwc/labwc.git
synced 2026-02-06 04:06:33 -05:00
Move common xdg/xwayland handle_destroy() code to view_destroy()
This commit is contained in:
parent
ecbe699f94
commit
6819dcee78
3 changed files with 12 additions and 24 deletions
10
src/view.c
10
src/view.c
|
|
@ -1019,6 +1019,16 @@ view_destroy(struct view *view)
|
|||
struct server *server = view->server;
|
||||
bool need_cursor_update = false;
|
||||
|
||||
wl_list_remove(&view->map.link);
|
||||
wl_list_remove(&view->unmap.link);
|
||||
wl_list_remove(&view->request_move.link);
|
||||
wl_list_remove(&view->request_resize.link);
|
||||
wl_list_remove(&view->request_minimize.link);
|
||||
wl_list_remove(&view->request_maximize.link);
|
||||
wl_list_remove(&view->request_fullscreen.link);
|
||||
wl_list_remove(&view->set_title.link);
|
||||
wl_list_remove(&view->destroy.link);
|
||||
|
||||
if (view->toplevel.handle) {
|
||||
wlr_foreign_toplevel_handle_v1_destroy(view->toplevel.handle);
|
||||
}
|
||||
|
|
|
|||
12
src/xdg.c
12
src/xdg.c
|
|
@ -127,20 +127,10 @@ handle_destroy(struct wl_listener *listener, void *data)
|
|||
xdg_toplevel_view->xdg_surface->data = NULL;
|
||||
xdg_toplevel_view->xdg_surface = NULL;
|
||||
|
||||
wl_list_remove(&view->map.link);
|
||||
wl_list_remove(&view->unmap.link);
|
||||
wl_list_remove(&view->request_move.link);
|
||||
wl_list_remove(&view->request_resize.link);
|
||||
wl_list_remove(&view->request_minimize.link);
|
||||
wl_list_remove(&view->request_maximize.link);
|
||||
wl_list_remove(&view->request_fullscreen.link);
|
||||
wl_list_remove(&view->set_title.link);
|
||||
|
||||
/* Remove xdg-shell view specific listeners */
|
||||
wl_list_remove(&xdg_toplevel_view->set_app_id.link);
|
||||
wl_list_remove(&xdg_toplevel_view->new_popup.link);
|
||||
|
||||
wl_list_remove(&view->destroy.link);
|
||||
|
||||
view_destroy(view);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -222,25 +222,13 @@ handle_destroy(struct wl_listener *listener, void *data)
|
|||
xwayland_view->xwayland_surface->data = NULL;
|
||||
xwayland_view->xwayland_surface = NULL;
|
||||
|
||||
/* Remove XWayland specific handlers */
|
||||
wl_list_remove(&view->map.link);
|
||||
wl_list_remove(&view->unmap.link);
|
||||
wl_list_remove(&view->request_move.link);
|
||||
wl_list_remove(&view->request_resize.link);
|
||||
wl_list_remove(&view->request_minimize.link);
|
||||
wl_list_remove(&view->request_maximize.link);
|
||||
wl_list_remove(&view->request_fullscreen.link);
|
||||
wl_list_remove(&view->set_title.link);
|
||||
|
||||
/* Remove XWayland view specific listeners */
|
||||
wl_list_remove(&xwayland_view->request_activate.link);
|
||||
wl_list_remove(&xwayland_view->request_configure.link);
|
||||
wl_list_remove(&xwayland_view->set_app_id.link);
|
||||
wl_list_remove(&xwayland_view->set_decorations.link);
|
||||
wl_list_remove(&xwayland_view->override_redirect.link);
|
||||
|
||||
wl_list_remove(&view->destroy.link);
|
||||
|
||||
/* And finally destroy / free the view */
|
||||
view_destroy(view);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue