c->mon = m;
attach(c);
attachstack(c);
- selmon->sel = selmon->stack;
m->sel = c;
+ for(c = selmon->stack; c && !ISVISIBLE(c); c = c->snext);
+ selmon->sel = c;
arrange();
break;
}
detach(c);
detachstack(c);
if(c->mon->sel == c) {
- c->mon->sel = c->mon->stack;
+ /* TODO: consider separate the next code into a function or into detachstack? */
+ Client *tc;
+ for(tc = c->mon->stack; tc && !ISVISIBLE(tc); tc = tc->snext);
+ c->mon->sel = tc;
focus(NULL);
}
XUngrabButton(dpy, AnyButton, AnyModifier, c->win);