diff --git a/client.c b/client.c index b380206d..cd9e537f 100644 --- a/client.c +++ b/client.c @@ -205,6 +205,7 @@ client_unfocus(client_t *c) focus_client_push(NULL); widget_invalidate_cache(c->screen, WIDGET_CACHE_CLIENTS); + ewmh_update_net_active_window(c->phys_screen); } /** Ban client and unmap it. @@ -395,12 +396,12 @@ client_manage(xcb_window_t w, xcb_get_geometry_reply_t *wgeom, int screen) /* Push client in stack */ client_raise(c); - widget_invalidate_cache(c->screen, WIDGET_CACHE_CLIENTS); - ewmh_update_net_client_list(c->phys_screen); - /* update window title */ client_updatetitle(c); + ewmh_update_net_client_list(c->phys_screen); + widget_invalidate_cache(c->screen, WIDGET_CACHE_CLIENTS); + /* call hook */ luaA_client_userdata_new(c); luaA_dofunction(globalconf.L, globalconf.hooks.manage, 1); @@ -662,6 +663,8 @@ client_unmanage(client_t *c) titlebar_unref(&c->titlebar); } + ewmh_update_net_client_list(c->phys_screen); + p_delete(&c); }