summary refs log tree commit diff
path: root/group.c
diff options
context:
space:
mode:
authorokan <okan>2019-02-28 13:11:53 +0000
committerokan <okan>2019-02-28 13:11:53 +0000
commit8cd6d1154c6e5198403270a66fffb8a4f0c56cf6 (patch)
treea073224124051bc402358b7814f194f43d21c2db /group.c
parentcd4be1c17a537cc398520140c547370d1061b841 (diff)
downloadcwm-8cd6d1154c6e5198403270a66fffb8a4f0c56cf6.tar.gz
cwm-8cd6d1154c6e5198403270a66fffb8a4f0c56cf6.tar.xz
cwm-8cd6d1154c6e5198403270a66fffb8a4f0c56cf6.zip
Selectively hide and show clients based on state; merge client_unhide() and
client_show().
Diffstat (limited to 'group.c')
-rw-r--r--group.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/group.c b/group.c
index 30fe718..666186b 100644
--- a/group.c
+++ b/group.c
@@ -67,7 +67,8 @@ group_hide(struct group_ctx *gc)
 	screen_updatestackingorder(gc->sc);
 
 	TAILQ_FOREACH(cc, &gc->clientq, group_entry) {
-		if (!(cc->flags & CLIENT_STICKY))
+		if (!(cc->flags & CLIENT_STICKY) &&
+		    !(cc->flags & CLIENT_HIDDEN))
 			client_hide(cc);
 	}
 }
@@ -78,8 +79,9 @@ group_show(struct group_ctx *gc)
 	struct client_ctx	*cc;
 
 	TAILQ_FOREACH(cc, &gc->clientq, group_entry) {
-		if (!(cc->flags & CLIENT_STICKY))
-			client_unhide(cc);
+		if (!(cc->flags & CLIENT_STICKY) &&
+		     (cc->flags & CLIENT_HIDDEN))
+			client_show(cc);
 	}
 
 	group_restack(gc);