Make sure we cycle through existing client's group membership and set

the hidden state on the group; important to know group hidden state
after a re-exec or restart of cwm (as easily seen in group menu).
This commit is contained in:
okan 2014-02-08 02:49:30 +00:00
commit 6798e3dde3
3 changed files with 11 additions and 0 deletions

View File

@ -415,6 +415,7 @@ void group_init(struct screen_ctx *);
void group_menu(struct screen_ctx *);
void group_movetogroup(struct client_ctx *, int);
void group_only(struct screen_ctx *, int);
void group_set_state(struct screen_ctx *);
void group_sticky(struct client_ctx *);
void group_sticky_toggle_enter(struct client_ctx *);
void group_sticky_toggle_exit(struct client_ctx *);

View File

@ -148,6 +148,15 @@ group_init(struct screen_ctx *sc)
group_setactive(sc, 1);
}
void
group_set_state(struct screen_ctx *sc)
{
struct group_ctx *gc;
TAILQ_FOREACH(gc, &sc->groupq, entry)
group_fix_hidden_state(gc);
}
static void
group_setactive(struct screen_ctx *sc, long idx)
{

View File

@ -69,6 +69,7 @@ screen_init(int which)
XFree(wins);
}
screen_updatestackingorder(sc);
group_set_state(sc);
if (HasRandr)
XRRSelectInput(X_Dpy, sc->rootwin, RRScreenChangeNotifyMask);