~kris/suckless

dwm

ref: 84e42e3f9c46592fbb5f9c376caa5ea082788ebf dwm/patch/swapfocus.c -rw-r--r-- 630 bytes
84e42e3f — Kris Yotam Restore Mod+s/Print snip and record bindings 3 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
void
swapfocus(const Arg *arg)
{
   if (!selmon->sel)
       return;
   if (selmon->pertag->prevclient[selmon->pertag->curtag] != NULL
           && ISVISIBLE(selmon->pertag->prevclient[selmon->pertag->curtag])) {
       focus(selmon->pertag->prevclient[selmon->pertag->curtag]);
       restack(selmon->pertag->prevclient[selmon->pertag->curtag]->mon);
   }
   else {
       Client *c = NULL;
       for (c = selmon->sel->next; c && !ISVISIBLE(c); c = c->next);
       if (!c)
           for (c = selmon->clients; c && !ISVISIBLE(c); c = c->next);
       if (c) {
           focus(c);
           restack(selmon);
       }
   }
}