summary refs log tree commit diff
diff options
context:
space:
mode:
authorokan <okan>2012-07-16 01:53:14 +0000
committerokan <okan>2012-07-16 01:53:14 +0000
commit3f956098d9e8382d27a81aedd1e77220dff4865f (patch)
treebda1a9172d71270196934dcf031dd64cac0d195c
parent57af364a2188e90c68b14852c85f26aba04be334 (diff)
downloadcwm-3f956098d9e8382d27a81aedd1e77220dff4865f.tar.gz
cwm-3f956098d9e8382d27a81aedd1e77220dff4865f.tar.xz
cwm-3f956098d9e8382d27a81aedd1e77220dff4865f.zip
unify various max routines to match client placement and partially menu ones
when calculating screen dimensions.
-rw-r--r--client.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/client.c b/client.c
index c101c5e..15052eb 100644
--- a/client.c
+++ b/client.c
@@ -256,8 +256,7 @@ void
 client_maximize(struct client_ctx *cc)
 {
 	struct screen_ctx	*sc = cc->sc;
-	int			 xmax = sc->view.w, ymax = sc->view.h;
-	int			 x_org = 0, y_org = 0;
+	int			 x_org, y_org, xmax, ymax;
 	XineramaScreenInfo	*xine;
 
 	if (cc->flags & CLIENT_FREEZE)
@@ -293,6 +292,10 @@ client_maximize(struct client_ctx *cc)
 		y_org = xine->y_org;
 		xmax = xine->width;
 		ymax = xine->height;
+	} else {
+		x_org = y_org = 0;
+		xmax = sc->view.w;
+		ymax = sc->view.h;
 	}
 
 	cc->geom.x = x_org + sc->gap.left;
@@ -310,7 +313,7 @@ void
 client_vertmaximize(struct client_ctx *cc)
 {
 	struct screen_ctx	*sc = cc->sc;
-	int			 y_org = 0, ymax = sc->view.h;
+	int			 y_org, ymax;
 	XineramaScreenInfo	*xine;
 
 	if (cc->flags & CLIENT_FREEZE)
@@ -341,6 +344,9 @@ client_vertmaximize(struct client_ctx *cc)
 	if (xine) {
 		y_org = xine->y_org;
 		ymax = xine->height;
+	} else {
+		y_org = 0;
+		ymax = sc->view.h;
 	}
 
 	cc->geom.y = y_org + sc->gap.top;
@@ -356,7 +362,7 @@ void
 client_horizmaximize(struct client_ctx *cc)
 {
 	struct screen_ctx	*sc = cc->sc;
-	int			 x_org = 0, xmax = sc->view.w;
+	int			 x_org, xmax;
 	XineramaScreenInfo	*xine;
 
 	if (cc->flags & CLIENT_FREEZE)
@@ -387,6 +393,9 @@ client_horizmaximize(struct client_ctx *cc)
 	if (xine) {
 		x_org = xine->x_org;
 		xmax = xine->width;
+	} else {
+		x_org = 0;
+		xmax = sc->view.w;
 	}
 
 	cc->geom.x = x_org + sc->gap.left;