|
@@ -79,15 +79,16 @@ configure(Client *c) {
|
|
|
|
|
|
|
|
void
|
|
void
|
|
|
focus(Client *c) {
|
|
focus(Client *c) {
|
|
|
- Client *old = sel;
|
|
|
|
|
-
|
|
|
|
|
if(c && !isvisible(c))
|
|
if(c && !isvisible(c))
|
|
|
return;
|
|
return;
|
|
|
|
|
|
|
|
- if(old && old != c) {
|
|
|
|
|
- grabbuttons(old, False);
|
|
|
|
|
- XSetWindowBorder(dpy, old->win, dc.norm[ColBorder]);
|
|
|
|
|
|
|
+ if(sel && sel != c) {
|
|
|
|
|
+ grabbuttons(sel, False);
|
|
|
|
|
+ XSetWindowBorder(dpy, sel->win, dc.norm[ColBorder]);
|
|
|
}
|
|
}
|
|
|
|
|
+ sel = c;
|
|
|
|
|
+ if(!issel)
|
|
|
|
|
+ return;
|
|
|
if(c) {
|
|
if(c) {
|
|
|
detachstack(c);
|
|
detachstack(c);
|
|
|
c->snext = stack;
|
|
c->snext = stack;
|
|
@@ -96,9 +97,8 @@ focus(Client *c) {
|
|
|
XSetWindowBorder(dpy, c->win, dc.sel[ColBorder]);
|
|
XSetWindowBorder(dpy, c->win, dc.sel[ColBorder]);
|
|
|
XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
|
|
XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
|
|
|
}
|
|
}
|
|
|
- else if(issel)
|
|
|
|
|
|
|
+ else
|
|
|
XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime);
|
|
XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime);
|
|
|
- sel = c;
|
|
|
|
|
drawstatus();
|
|
drawstatus();
|
|
|
}
|
|
}
|
|
|
|
|
|