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);