diff options
Diffstat (limited to 'sys/cmd/wm/client.c')
-rw-r--r-- | sys/cmd/wm/client.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/sys/cmd/wm/client.c b/sys/cmd/wm/client.c index 7c13545..5e0927a 100644 --- a/sys/cmd/wm/client.c +++ b/sys/cmd/wm/client.c @@ -64,11 +64,17 @@ resize_client(Arg *arg) // ----------------------------------------------------------------------- // core +static inline +void +activate(struct wlr_surface *surface, int state) +{ +} + void focus(Client *client, int lift) { - struct wlr_surface *old, *new; struct wlr_xdg_surface *xdg; + struct wlr_surface *old, *new; struct wlr_keyboard *keyboard; if(!client) { @@ -92,10 +98,11 @@ focus(Client *client, int lift) server.monitor.selected = client->monitor; client->isurgent = 0; - // XXX: do we need for non-client case? if(old) { - xdg = wlr_xdg_surface_from_wlr_surface(old); - wlr_xdg_toplevel_set_activated(xdg, false); + if(wlr_surface_is_xdg_surface(old)) { + xdg = wlr_xdg_surface_from_wlr_surface(old); + wlr_xdg_toplevel_set_activated(xdg, false); + } } keyboard = wlr_seat_get_keyboard(server.input.seat); |