diff options
-rw-r--r-- | layout.c | 16 |
1 files changed, 6 insertions, 10 deletions
@@ -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); |