equal
deleted
inserted
replaced
79 |
79 |
80 void |
80 void |
81 focus(Client *c) { |
81 focus(Client *c) { |
82 Client *old = sel; |
82 Client *old = sel; |
83 |
83 |
84 if(!issel || (c && !isvisible(c))) |
84 if(c && !isvisible(c)) |
85 return; |
85 return; |
86 |
86 |
87 if(old && old != c) { |
87 if(old && old != c) { |
88 grabbuttons(old, False); |
88 grabbuttons(old, False); |
89 XSetWindowBorder(dpy, old->win, dc.norm[ColBorder]); |
89 XSetWindowBorder(dpy, old->win, dc.norm[ColBorder]); |
90 } |
90 } |
91 if(c) { |
91 if(c) { |
92 detachstack(c); |
92 if(issel) { |
93 c->snext = stack; |
93 detachstack(c); |
94 stack = c; |
94 c->snext = stack; |
95 grabbuttons(c, True); |
95 stack = c; |
96 XSetWindowBorder(dpy, c->win, dc.sel[ColBorder]); |
96 grabbuttons(c, True); |
97 XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime); |
97 XSetWindowBorder(dpy, c->win, dc.sel[ColBorder]); |
98 } |
98 XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime); |
99 else |
99 } |
|
100 else |
|
101 XSetWindowBorder(dpy, c->win, dc.norm[ColBorder]); |
|
102 } |
|
103 else if(issel) |
100 XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime); |
104 XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime); |
101 sel = c; |
105 sel = c; |
102 drawstatus(); |
106 drawstatus(); |
103 } |
107 } |
104 |
108 |