From 8c1fffe1067b8c792ca9c018c29677a9708b1e41 Mon Sep 17 00:00:00 2001
From: "Anselm R.Garbe" <arg@10ksloc.org>
Date: Fri, 18 Aug 2006 08:39:33 +0200
Subject: [PATCH] made a new client position strategy similiar to that one
 proposed by Sander, but which takes top bar into account

---
 client.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/client.c b/client.c
index b158f01..02aff83 100644
--- a/client.c
+++ b/client.c
@@ -203,8 +203,14 @@ manage(Window w, XWindowAttributes *wa)
 	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 @@ manage(Window w, XWindowAttributes *wa)
 			|| (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);