diff options
author | okan <okan> | 2012-12-17 17:48:57 +0000 |
---|---|---|
committer | okan <okan> | 2012-12-17 17:48:57 +0000 |
commit | 82e8ec4245f44bd10c0fc5ed27640dafbb7beb44 (patch) | |
tree | b14a92be3accc1a5e4e72e08f78878e4e151bd09 | |
parent | 8e67d1389ceb0450712039832e5ff868335c6846 (diff) | |
download | cwm-82e8ec4245f44bd10c0fc5ed27640dafbb7beb44.tar.gz cwm-82e8ec4245f44bd10c0fc5ed27640dafbb7beb44.tar.xz cwm-82e8ec4245f44bd10c0fc5ed27640dafbb7beb44.zip |
replace client highlight with a client flag
-rw-r--r-- | calmwm.h | 6 | ||||
-rw-r--r-- | client.c | 7 | ||||
-rw-r--r-- | group.c | 10 |
3 files changed, 10 insertions, 13 deletions
diff --git a/calmwm.h b/calmwm.h index bfef2bd..601ca8f 100644 --- a/calmwm.h +++ b/calmwm.h @@ -159,16 +159,16 @@ struct client_ctx { #define CLIENT_VMAXIMIZED 0x0004 #define CLIENT_HMAXIMIZED 0x0008 #define CLIENT_FREEZE 0x0010 +#define CLIENT_GROUP 0x0020 +#define CLIENT_UNGROUP 0x0040 +#define CLIENT_HIGHLIGHT (CLIENT_GROUP | CLIENT_UNGROUP) #define CLIENT_MAXFLAGS (CLIENT_VMAXIMIZED | CLIENT_HMAXIMIZED) #define CLIENT_MAXIMIZED (CLIENT_VMAXIMIZED | CLIENT_HMAXIMIZED) int flags; int state; int active; int stackingorder; -#define CLIENT_HIGHLIGHT_GROUP 0x0001 -#define CLIENT_HIGHLIGHT_UNGROUP 0x0002 - int highlight; struct winname_q nameq; #define CLIENT_MAXNAMEQLEN 5 int nameqlen; diff --git a/client.c b/client.c index 3dd6c70..cae9ba4 100644 --- a/client.c +++ b/client.c @@ -490,7 +490,6 @@ client_unhide(struct client_ctx *cc) { XMapRaised(X_Dpy, cc->win); - cc->highlight = 0; cc->flags &= ~CLIENT_HIDDEN; xu_setstate(cc, NormalState); client_draw_border(cc); @@ -503,11 +502,11 @@ client_draw_border(struct client_ctx *cc) unsigned long pixel; if (cc->active) - switch (cc->highlight) { - case CLIENT_HIGHLIGHT_GROUP: + switch (cc->flags & CLIENT_HIGHLIGHT) { + case CLIENT_GROUP: pixel = sc->color[CWM_COLOR_BORDER_GROUP].pixel; break; - case CLIENT_HIGHLIGHT_UNGROUP: + case CLIENT_UNGROUP: pixel = sc->color[CWM_COLOR_BORDER_UNGROUP].pixel; break; default: diff --git a/group.c b/group.c index 1b89825..847cddd 100644 --- a/group.c +++ b/group.c @@ -218,16 +218,14 @@ void group_sticky_toggle_enter(struct client_ctx *cc) { struct screen_ctx *sc = cc->sc; - struct group_ctx *gc; - - gc = sc->group_active; + struct group_ctx *gc = sc->group_active; if (gc == cc->group) { group_remove(cc); - cc->highlight = CLIENT_HIGHLIGHT_UNGROUP; + cc->flags |= CLIENT_UNGROUP; } else { group_add(gc, cc); - cc->highlight = CLIENT_HIGHLIGHT_GROUP; + cc->flags |= CLIENT_GROUP; } client_draw_border(cc); @@ -236,7 +234,7 @@ group_sticky_toggle_enter(struct client_ctx *cc) void group_sticky_toggle_exit(struct client_ctx *cc) { - cc->highlight = 0; + cc->flags &= ~CLIENT_HIGHLIGHT; client_draw_border(cc); } |