for(c = clients; c; c = c->next)
if(c->tags & tagset[seltags]) { /* is visible */
+ c->isbanned = False;
if(!lt[sellt]->arrange || c->isfloating)
resize(c, c->x, c->y, c->w, c->h, True);
- c->isbanned = False;
}
else if(!c->isbanned) {
XMoveWindow(dpy, c->win, c->x + 2 * sw, c->y);
c->x = sx + (sw / 2 - c->w / 2); /* center in x direction */
if((c->y - sy + c->h) > sh && c->isfloating)
c->y = sy + (sh / 2 - c->h / 2); /* center in y direction */
- if((ev->value_mask & (CWX|CWY))
- && !(ev->value_mask & (CWWidth|CWHeight)))
+ if((ev->value_mask & (CWX|CWY)) && !(ev->value_mask & (CWWidth|CWHeight)))
configure(c);
if(!c->isbanned)
XMoveResizeWindow(dpy, c->win, c->x, c->y, c->w, c->h);
void
drawbar(void) {
int i, x;
- Client *c;
dc.x = 0;
- for(c = stack; c && c->isbanned; c = c->snext);
for(i = 0; i < LENGTH(tags); i++) {
dc.w = TEXTW(tags[i]);
if(tagset[seltags] & 1 << i) {
drawtext(tags[i], dc.sel, isurgent(i));
- drawsquare(c && c->tags & 1 << i, isoccupied(i), isurgent(i), dc.sel);
+ drawsquare(sel && sel->tags & 1 << i, isoccupied(i), isurgent(i), dc.sel);
}
else {
drawtext(tags[i], dc.norm, isurgent(i));
- drawsquare(c && c->tags & 1 << i, isoccupied(i), isurgent(i), dc.norm);
+ drawsquare(sel && sel->tags & 1 << i, isoccupied(i), isurgent(i), dc.norm);
}
dc.x += dc.w;
}
drawtext(stext, dc.norm, False);
if((dc.w = dc.x - x) > bh) {
dc.x = x;
- if(c) {
- drawtext(c->name, dc.sel, False);
- drawsquare(c->isfixed, c->isfloating, False, dc.sel);
+ if(sel) {
+ drawtext(sel->name, dc.sel, False);
+ drawsquare(sel->isfixed, sel->isfloating, False, dc.sel);
}
else
drawtext(NULL, dc.norm, False);
h = bh;
if(w < bh)
w = bh;
- if(c->x != x || c->y != y || c->w != w || c->h != h) {
+ if(!c->isbanned || c->x != x || c->y != y || c->w != w || c->h != h) {
c->x = wc.x = x;
c->y = wc.y = y;
c->w = wc.width = w;