Move CLIENT_STICKY logic from client hide/unhide to group hide/unhide;

rationale being that clients should be able to hide/unhide independently
of group switching.
This commit is contained in:
okan 2015-08-23 17:31:20 +00:00
parent ae9306748b
commit b224945446
2 changed files with 8 additions and 10 deletions

View File

@ -493,9 +493,6 @@ client_ptrsave(struct client_ctx *cc)
void void
client_hide(struct client_ctx *cc) client_hide(struct client_ctx *cc)
{ {
if (cc->flags & CLIENT_STICKY)
return;
XUnmapWindow(X_Dpy, cc->win); XUnmapWindow(X_Dpy, cc->win);
cc->flags &= ~CLIENT_ACTIVE; cc->flags &= ~CLIENT_ACTIVE;
@ -509,9 +506,6 @@ client_hide(struct client_ctx *cc)
void void
client_unhide(struct client_ctx *cc) client_unhide(struct client_ctx *cc)
{ {
if (cc->flags & CLIENT_STICKY)
return;
XMapRaised(X_Dpy, cc->win); XMapRaised(X_Dpy, cc->win);
cc->flags &= ~CLIENT_HIDDEN; cc->flags &= ~CLIENT_HIDDEN;

12
group.c
View File

@ -64,8 +64,10 @@ group_hide(struct group_ctx *gc)
screen_updatestackingorder(gc->sc); screen_updatestackingorder(gc->sc);
TAILQ_FOREACH(cc, &gc->clientq, group_entry) TAILQ_FOREACH(cc, &gc->clientq, group_entry) {
client_hide(cc); if (!(cc->flags & CLIENT_STICKY))
client_hide(cc);
}
} }
void void
@ -73,8 +75,10 @@ group_show(struct group_ctx *gc)
{ {
struct client_ctx *cc; struct client_ctx *cc;
TAILQ_FOREACH(cc, &gc->clientq, group_entry) TAILQ_FOREACH(cc, &gc->clientq, group_entry) {
client_unhide(cc); if (!(cc->flags & CLIENT_STICKY))
client_unhide(cc);
}
group_restack(gc); group_restack(gc);
group_setactive(gc); group_setactive(gc);