made a new client position strategy similiar to that one proposed by Sander, but which takes top bar into account
authorAnselm R.Garbe <arg@10ksloc.org>
Fri, 18 Aug 2006 08:39:33 +0200
changeset 314 8bafc3ac9f58
parent 313 8b109976c594
child 315 d9bef4067cd5
made a new client position strategy similiar to that one proposed by Sander, but which takes top bar into account
client.c
--- a/client.c	Thu Aug 17 10:06:36 2006 +0200
+++ b/client.c	Fri Aug 18 08:39:33 2006 +0200
@@ -203,8 +203,14 @@
 	c->border = 0;
 	setsize(c);
 
+	if(c->x + c->w > sw)
+		c->x = sw - c->w - 2;
+	if(c->x < 0)
+		c->x = 0;
+	if(c->y + c->h > sh)
+		c->y = sh - c->h - 2;
 	if(c->h != sh && c->y < bh)
-		c->y = c->ty = bh;
+		c->y = bh;
 
 	c->proto = getproto(c->win);
 	XSelectInput(dpy, c->win,
@@ -257,12 +263,6 @@
 			|| (c->maxw && c->minw &&
 				c->maxw == c->minw && c->maxh == c->minh);
 	settitle(c);
-
-	if(!trans) {
-		c->x = (sw / 2) - (c->w / 2);
-		c->y = ((sh - bh) / 2) - (c->h / 2) + bh;
-	}
-
 	if(isvisible(c))
 		sel = c;
 	arrange(NULL);