diff options
Diffstat (limited to 'src/manage.c')
-rw-r--r-- | src/manage.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/manage.c b/src/manage.c index 4f7fe14..f6d5657 100644 --- a/src/manage.c +++ b/src/manage.c @@ -347,7 +347,10 @@ void unmanage (rp_window *w) { numset_release (rp_window_numset, w->number); + list_del (&w->node); + groups_del_window (w); + free_window (w); #ifdef AUTO_CLOSE @@ -724,6 +727,9 @@ map_window (rp_window *win) list_del (&win->node); insert_into_list (win, &rp_mapped_window); + /* Update all groups. */ + groups_map_window (win); + /* The window has never been accessed since it was brought back from the Withdrawn state. */ win->last_access = 0; @@ -806,6 +812,9 @@ withdraw_window (rp_window *win) list_move_tail(&win->node, &rp_unmapped_window); + /* Update the groups. */ + groups_unmap_window (win); + ignore_badwindow++; XRemoveFromSaveSet (dpy, win->w); |