aboutsummarylogtreecommitdiffstats
path: root/client.c
diff options
context:
space:
mode:
authorAnselm R. Garbe2007-05-29 11:35:20 +0200
committerAnselm R. Garbe2007-05-29 11:35:20 +0200
commit4f4c82eccb83874f15a911abeb83a2f5618ab806 (patch)
tree18492d2a1b1b6f7479999574e7b6e5f2986f8ded /client.c
parentc15a161a008a461ae9513a54337449faba367238 (diff)
downloadaur-4f4c82eccb83874f15a911abeb83a2f5618ab806.tar.gz
applied anydot's 3 minor patches, thank you anydot
Diffstat (limited to 'client.c')
-rw-r--r--client.c17
1 files changed, 4 insertions, 13 deletions
diff --git a/client.c b/client.c
index f3d31cb2f5df..90399aefc2b0 100644
--- a/client.c
+++ b/client.c
@@ -129,8 +129,8 @@ detach(Client *c) {
void
focus(Client *c) {
- if(c && !isvisible(c))
- return;
+ if( !c && selscreen || c && !isvisible(c))
+ for(c = stack; c && !isvisible(c); c = c->snext);
if(sel && sel != c) {
grabbuttons(sel, False);
XSetWindowBorder(dpy, sel->win, dc.norm[ColBorder]);
@@ -153,14 +153,6 @@ focus(Client *c) {
}
void
-focustopvisible(void) {
- Client *c;
-
- for(c = stack; c && !isvisible(c); c = c->snext);
- focus(c);
-}
-
-void
killclient(const char *arg) {
XEvent ev;
@@ -230,8 +222,7 @@ manage(Window w, XWindowAttributes *wa) {
XMoveWindow(dpy, w, c->x + 2 * sw, c->y);
XMapWindow(dpy, w);
setclientstate(c, NormalState);
- if(isvisible(c))
- focus(c);
+ focus(c);
lt->arrange();
}
@@ -401,7 +392,7 @@ unmanage(Client *c) {
detach(c);
detachstack(c);
if(sel == c)
- focustopvisible();
+ focus(NULL);
XUngrabButton(dpy, AnyButton, AnyModifier, c->win);
setclientstate(c, WithdrawnState);
free(c->tags);