diff options
Diffstat (limited to 'sys/cmd/wm/xdg.c')
-rw-r--r-- | sys/cmd/wm/xdg.c | 7 |
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); } |