Mercurial > aewl
comparison view.c @ 429:a31de8605f72
no, ordering floating clients at the end seems better
author | Anselm R. Garbe <arg@10kloc.org> |
---|---|
date | Tue, 05 Sep 2006 19:26:34 +0200 |
parents | 16f8f05f960e |
children | 1e8aba00964e |
comparison
equal
deleted
inserted
replaced
428:16f8f05f960e | 429:a31de8605f72 |
---|---|
80 Client *c; | 80 Client *c; |
81 | 81 |
82 maximized = False; | 82 maximized = False; |
83 | 83 |
84 w = sw - mw; | 84 w = sw - mw; |
85 for(n = 0, c = clients; c; c = c->next) | 85 for(n = 0, c = clients; c && !c->isfloat; c = c->next) |
86 if(isvisible(c) && !c->isfloat) | 86 if(isvisible(c)) |
87 n++; | 87 n++; |
88 | 88 |
89 if(n > 1) | 89 if(n > 1) |
90 h = (sh - bh) / (n - 1); | 90 h = (sh - bh) / (n - 1); |
91 else | 91 else |
184 resizecol(Arg *arg) | 184 resizecol(Arg *arg) |
185 { | 185 { |
186 unsigned int n; | 186 unsigned int n; |
187 Client *c; | 187 Client *c; |
188 | 188 |
189 for(n = 0, c = clients; c; c = c->next) | 189 for(n = 0, c = clients; c && !c->isfloat; c = c->next) |
190 if(isvisible(c) && !c->isfloat) | 190 if(isvisible(c)) |
191 n++; | 191 n++; |
192 if(!sel || sel->isfloat || n < 2 || (arrange != dotile) || maximized) | 192 if(!sel || sel->isfloat || n < 2 || (arrange != dotile) || maximized) |
193 return; | 193 return; |
194 | 194 |
195 if(sel == getnext(clients)) { | 195 if(sel == getnext(clients)) { |
309 zoom(Arg *arg) | 309 zoom(Arg *arg) |
310 { | 310 { |
311 unsigned int n; | 311 unsigned int n; |
312 Client *c; | 312 Client *c; |
313 | 313 |
314 for(n = 0, c = clients; c; c = c->next) | 314 for(n = 0, c = clients; c && !c->isfloat; c = c->next) |
315 if(isvisible(c) && !c->isfloat) | 315 if(isvisible(c)) |
316 n++; | 316 n++; |
317 if(!sel || sel->isfloat || n < 2 || (arrange != dotile) || maximized) | 317 if(!sel || sel->isfloat || n < 2 || (arrange != dotile) || maximized) |
318 return; | 318 return; |
319 | 319 |
320 /* this is somewhat tricky, it asserts to only zoom tiled clients */ | 320 if((c = sel) == getnext(clients)) |
321 for(c = getnext(clients); c && c->isfloat; c = getnext(c->next)); | 321 if(!(c = getnext(c->next)) || c->isfloat) |
322 if(c) { | 322 return; |
323 if(c == sel) | |
324 for(c = getnext(c->next); c && c->isfloat; c = getnext(c->next)); | |
325 else | |
326 c = sel; | |
327 } | |
328 if(!c) | |
329 return; | |
330 detach(c); | 323 detach(c); |
331 c->next = clients; | 324 c->next = clients; |
332 clients->prev = c; | 325 clients->prev = c; |
333 clients = c; | 326 clients = c; |
334 focus(c); | 327 focus(c); |