commit 2aa391361c877f3319050e57c828e065a61d9d85
parent 549335ae5458834f91a59ee14f385d17b2d4f888
Author: Leonardo Hernández Hernández <leohdz172@protonmail.com>
Date: Fri, 24 Jun 2022 15:36:13 -0500
inline unmaplayersurface() into unmaplayersurfacenotify()
unmap signal is guaranted to be emitted before destroy signal
so is useless checking if it is mapped at destroy
Diffstat:
| M | dwl.c | | | 14 | +++----------- |
1 file changed, 3 insertions(+), 11 deletions(-)
diff --git a/dwl.c b/dwl.c
@@ -283,7 +283,6 @@ static void togglefloating(const Arg *arg);
static void togglefullscreen(const Arg *arg);
static void toggletag(const Arg *arg);
static void toggleview(const Arg *arg);
-static void unmaplayersurface(LayerSurface *layersurface);
static void unmaplayersurfacenotify(struct wl_listener *listener, void *data);
static void unmapnotify(struct wl_listener *listener, void *data);
static void updatemons(struct wl_listener *listener, void *data);
@@ -1050,8 +1049,6 @@ destroylayersurfacenotify(struct wl_listener *listener, void *data)
{
LayerSurface *layersurface = wl_container_of(listener, layersurface, destroy);
- if (layersurface->layer_surface->mapped)
- unmaplayersurface(layersurface);
wl_list_remove(&layersurface->link);
wl_list_remove(&layersurface->destroy.link);
wl_list_remove(&layersurface->map.link);
@@ -2245,8 +2242,10 @@ toggleview(const Arg *arg)
}
void
-unmaplayersurface(LayerSurface *layersurface)
+unmaplayersurfacenotify(struct wl_listener *listener, void *data)
{
+ LayerSurface *layersurface = wl_container_of(listener, layersurface, unmap);
+
layersurface->layer_surface->mapped = (layersurface->mapped = 0);
wlr_scene_node_set_enabled(layersurface->scene, 0);
if (layersurface->layer_surface->surface ==
@@ -2256,13 +2255,6 @@ unmaplayersurface(LayerSurface *layersurface)
}
void
-unmaplayersurfacenotify(struct wl_listener *listener, void *data)
-{
- LayerSurface *layersurface = wl_container_of(listener, layersurface, unmap);
- unmaplayersurface(layersurface);
-}
-
-void
unmapnotify(struct wl_listener *listener, void *data)
{
/* Called when the surface is unmapped, and should no longer be shown. */