aboutsummaryrefslogtreecommitdiff
path: root/sys/cmd/wm/xdg.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/cmd/wm/xdg.c')
-rw-r--r--sys/cmd/wm/xdg.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/cmd/wm/xdg.c b/sys/cmd/wm/xdg.c
index d49cfb6..1d5ae68 100644
--- a/sys/cmd/wm/xdg.c
+++ b/sys/cmd/wm/xdg.c
@@ -5,7 +5,6 @@ void
map(struct wl_listener *l, void *data)
{
Client *client = wl_container_of(l, client, event.map);
- client->ismapped = true;
wl_list_insert(&server.client.list, &client->link);
wl_list_insert(&server.client.stack, &client->stack);
@@ -18,7 +17,8 @@ map(struct wl_listener *l, void *data)
wlr_xdg_toplevel_set_tiled(client->xdg,
WLR_EDGE_TOP|WLR_EDGE_BOTTOM|WLR_EDGE_LEFT|WLR_EDGE_RIGHT
);
- focus(client, client->xdg->surface, 1);
+
+ rules(client);
}
static
@@ -26,9 +26,10 @@ void
unmap(struct wl_listener *l, void *data)
{
Client *client = wl_container_of(l, client, event.unmap);
- client->ismapped = false;
wl_list_remove(&client->link);
+ attach(client, nil, 0);
+
wl_list_remove(&client->stack);
wl_list_remove(&client->focus);
}