diff options
-rw-r--r-- | include/sway/tree/view.h | 1 | ||||
-rw-r--r-- | sway/desktop/xdg_shell_v6.c | 8 | ||||
-rw-r--r-- | sway/desktop/xwayland.c | 4 |
3 files changed, 0 insertions, 13 deletions
diff --git a/include/sway/tree/view.h b/include/sway/tree/view.h index 4ecd8c44..8091fe0c 100644 --- a/include/sway/tree/view.h +++ b/include/sway/tree/view.h | |||
@@ -153,7 +153,6 @@ struct sway_xdg_popup_v6 { | |||
153 | struct wlr_xdg_surface_v6 *wlr_xdg_surface_v6; | 153 | struct wlr_xdg_surface_v6 *wlr_xdg_surface_v6; |
154 | 154 | ||
155 | struct wl_listener new_popup; | 155 | struct wl_listener new_popup; |
156 | struct wl_listener unmap; | ||
157 | struct wl_listener destroy; | 156 | struct wl_listener destroy; |
158 | }; | 157 | }; |
159 | 158 | ||
diff --git a/sway/desktop/xdg_shell_v6.c b/sway/desktop/xdg_shell_v6.c index 8ecb330d..e9051b6c 100644 --- a/sway/desktop/xdg_shell_v6.c +++ b/sway/desktop/xdg_shell_v6.c | |||
@@ -20,7 +20,6 @@ static void popup_destroy(struct sway_view_child *child) { | |||
20 | } | 20 | } |
21 | struct sway_xdg_popup_v6 *popup = (struct sway_xdg_popup_v6 *)child; | 21 | struct sway_xdg_popup_v6 *popup = (struct sway_xdg_popup_v6 *)child; |
22 | wl_list_remove(&popup->new_popup.link); | 22 | wl_list_remove(&popup->new_popup.link); |
23 | wl_list_remove(&popup->unmap.link); | ||
24 | wl_list_remove(&popup->destroy.link); | 23 | wl_list_remove(&popup->destroy.link); |
25 | free(popup); | 24 | free(popup); |
26 | } | 25 | } |
@@ -39,11 +38,6 @@ static void popup_handle_new_popup(struct wl_listener *listener, void *data) { | |||
39 | popup_create(wlr_popup, popup->child.view); | 38 | popup_create(wlr_popup, popup->child.view); |
40 | } | 39 | } |
41 | 40 | ||
42 | static void popup_handle_unmap(struct wl_listener *listener, void *data) { | ||
43 | struct sway_xdg_popup_v6 *popup = wl_container_of(listener, popup, unmap); | ||
44 | view_child_destroy(&popup->child); | ||
45 | } | ||
46 | |||
47 | static void popup_handle_destroy(struct wl_listener *listener, void *data) { | 41 | static void popup_handle_destroy(struct wl_listener *listener, void *data) { |
48 | struct sway_xdg_popup_v6 *popup = wl_container_of(listener, popup, destroy); | 42 | struct sway_xdg_popup_v6 *popup = wl_container_of(listener, popup, destroy); |
49 | view_child_destroy(&popup->child); | 43 | view_child_destroy(&popup->child); |
@@ -62,8 +56,6 @@ static struct sway_xdg_popup_v6 *popup_create( | |||
62 | 56 | ||
63 | wl_signal_add(&xdg_surface->events.new_popup, &popup->new_popup); | 57 | wl_signal_add(&xdg_surface->events.new_popup, &popup->new_popup); |
64 | popup->new_popup.notify = popup_handle_new_popup; | 58 | popup->new_popup.notify = popup_handle_new_popup; |
65 | wl_signal_add(&xdg_surface->events.unmap, &popup->unmap); | ||
66 | popup->unmap.notify = popup_handle_unmap; | ||
67 | wl_signal_add(&xdg_surface->events.destroy, &popup->destroy); | 59 | wl_signal_add(&xdg_surface->events.destroy, &popup->destroy); |
68 | popup->destroy.notify = popup_handle_destroy; | 60 | popup->destroy.notify = popup_handle_destroy; |
69 | 61 | ||
diff --git a/sway/desktop/xwayland.c b/sway/desktop/xwayland.c index 8f935760..1d3c857d 100644 --- a/sway/desktop/xwayland.c +++ b/sway/desktop/xwayland.c | |||
@@ -82,10 +82,6 @@ static void unmanaged_handle_unmap(struct wl_listener *listener, void *data) { | |||
82 | static void unmanaged_handle_destroy(struct wl_listener *listener, void *data) { | 82 | static void unmanaged_handle_destroy(struct wl_listener *listener, void *data) { |
83 | struct sway_xwayland_unmanaged *surface = | 83 | struct sway_xwayland_unmanaged *surface = |
84 | wl_container_of(listener, surface, destroy); | 84 | wl_container_of(listener, surface, destroy); |
85 | struct wlr_xwayland_surface *xsurface = surface->wlr_xwayland_surface; | ||
86 | if (xsurface->mapped) { | ||
87 | unmanaged_handle_unmap(&surface->unmap, xsurface); | ||
88 | } | ||
89 | wl_list_remove(&surface->map.link); | 85 | wl_list_remove(&surface->map.link); |
90 | wl_list_remove(&surface->unmap.link); | 86 | wl_list_remove(&surface->unmap.link); |
91 | wl_list_remove(&surface->destroy.link); | 87 | wl_list_remove(&surface->destroy.link); |