about summary refs log tree commit diff
path: root/screen.c
diff options
context:
space:
mode:
authorokan <okan>2012-07-13 14:18:04 +0000
committerokan <okan>2012-07-13 14:18:04 +0000
commitcc08aef0df6236f794fb1d5dfcef265dba9da228 (patch)
treed8319581e897d35827fc9a89ff0fd25d74c91c29 /screen.c
parent2450e309ea6b0666606adcd93146687ece13c11e (diff)
downloadcwm-cc08aef0df6236f794fb1d5dfcef265dba9da228.tar.gz
cwm-cc08aef0df6236f794fb1d5dfcef265dba9da228.tar.xz
cwm-cc08aef0df6236f794fb1d5dfcef265dba9da228.zip
introduce screen "view" area and "work" area (gap applied) to simplify
various blocks that require understanding the screen geometry.
Diffstat (limited to 'screen.c')
-rw-r--r--screen.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/screen.c b/screen.c
index dd7eb0e..72468c2 100644
--- a/screen.c
+++ b/screen.c
@@ -120,6 +120,16 @@ screen_update_geometry(struct screen_ctx *sc)
 	sc->xmax = DisplayWidth(X_Dpy, sc->which);
 	sc->ymax = DisplayHeight(X_Dpy, sc->which);
 
+	sc->view.x = 0;
+	sc->view.y = 0;
+	sc->view.w = DisplayWidth(X_Dpy, sc->which);
+	sc->view.h = DisplayHeight(X_Dpy, sc->which);
+
+	sc->work.x = sc->view.x + sc->gap.left;
+	sc->work.y = sc->view.y + sc->gap.top;
+	sc->work.w = sc->view.w - (sc->gap.left + sc->gap.right);
+	sc->work.h = sc->view.h - (sc->gap.top + sc->gap.bottom);
+
 	screen_init_xinerama(sc);
 
 	xu_ewmh_net_desktop_geometry(sc);