|
|
@@ -75,21 +75,17 @@ focusclient(const char *arg) {
|
|
|
|
|
|
if(!sel || !arg)
|
|
|
return;
|
|
|
- switch(atoi(arg)) {
|
|
|
- default:
|
|
|
- return;
|
|
|
- case 1:
|
|
|
- for(c = sel->next; c && !isvisible(c); c = c->next);
|
|
|
- if(!c)
|
|
|
- for(c = clients; c && !isvisible(c); c = c->next);
|
|
|
- break;
|
|
|
- case -1:
|
|
|
+ if(atoi(arg) < 0) {
|
|
|
for(c = sel->prev; c && !isvisible(c); c = c->prev);
|
|
|
if(!c) {
|
|
|
for(c = clients; c && c->next; c = c->next);
|
|
|
for(; c && !isvisible(c); c = c->prev);
|
|
|
}
|
|
|
- break;
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ for(c = sel->next; c && !isvisible(c); c = c->next);
|
|
|
+ if(!c)
|
|
|
+ for(c = clients; c && !isvisible(c); c = c->next);
|
|
|
}
|
|
|
if(c) {
|
|
|
focus(c);
|