# HG changeset patch # User Anselm R.Garbe # Date 1155743764 -7200 # Node ID ec8a66a2b9cc96a2df068a6a3e4a3264f6dfb583 # Parent 71f02d14dce156db6c1bca44c70cf2a31e2b97d0 fixed issue reported by sander diff -r 71f02d14dce1 -r ec8a66a2b9cc client.c --- a/client.c Wed Aug 16 15:57:36 2006 +0200 +++ b/client.c Wed Aug 16 17:56:04 2006 +0200 @@ -261,6 +261,10 @@ if(trans && (tc = getclient(trans))) { c->x = (tc->x + tc->w / 2) - (c->w / 2); c->y = (tc->y + tc->h / 2) - (c->h / 2); + if(c->x < 0 || c->x >= sw) + c->x = (sw / 2) - (c->w / 2); + if(c->y < 0 || c->y >= sh) + c->y = ((sh - bh) / 2) - (c->h / 2) + bh; } else { c->x = (sw / 2) - (c->w / 2); diff -r 71f02d14dce1 -r ec8a66a2b9cc tag.c --- a/tag.c Wed Aug 16 15:57:36 2006 +0200 +++ b/tag.c Wed Aug 16 17:56:04 2006 +0200 @@ -49,12 +49,11 @@ } if(!sel || !isvisible(sel)) sel = getnext(clients); - if(sel) { + if(sel) focus(sel); - restack(); - } else XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime); + restack(); } void