added ban() which takes care than a banned window is not banned again... (this reduces the overall ConfigureNotify's to clients)

This commit is contained in:
Anselm R. Garbe
2007-02-14 14:01:12 +01:00
parent 0d095ae2ff
commit 3ce8c9f338
5 changed files with 19 additions and 7 deletions

9
view.c

@ -55,10 +55,12 @@ dofloat(void) {
Client *c;
for(c = clients; c; c = c->next) {
if(isvisible(c))
if(isvisible(c)) {
c->isbanned = False;
resize(c, True);
}
else
XMoveWindow(dpy, c->win, c->x + 2 * sw, c->y);
ban(c);
}
if(!sel || !isvisible(sel)) {
for(c = stack; c && !isvisible(c); c = c->snext);
@ -82,6 +84,7 @@ dotile(void) {
for(i = 0, c = clients; c; c = c->next)
if(isvisible(c)) {
c->isbanned = False;
if(c->isfloat) {
resize(c, True);
continue;
@ -108,7 +111,7 @@ dotile(void) {
i++;
}
else
XMoveWindow(dpy, c->win, c->x + 2 * sw, c->y);
ban(c);
if(!sel || !isvisible(sel)) {
for(c = stack; c && !isvisible(c); c = c->snext);
focus(c);