From 82e8ec4245f44bd10c0fc5ed27640dafbb7beb44 Mon Sep 17 00:00:00 2001 From: okan Date: Mon, 17 Dec 2012 17:48:57 +0000 Subject: [PATCH] replace client highlight with a client flag --- calmwm.h | 6 +++--- client.c | 7 +++---- 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); }