aboutsummaryrefslogtreecommitdiffstats
path: root/screen.c
diff options
context:
space:
mode:
Diffstat (limited to 'screen.c')
-rw-r--r--screen.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/screen.c b/screen.c
index 9c45f63..5deff21 100644
--- a/screen.c
+++ b/screen.c
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $Id: screen.c,v 1.22 2009/12/11 17:57:38 oga Exp $
+ * $Id: screen.c,v 1.23 2009/12/11 18:09:16 oga Exp $
*/
#include "headers.h"
@@ -102,10 +102,23 @@ screen_find_xinerama(struct screen_ctx *sc, int x, int y)
void
screen_update_geometry(struct screen_ctx *sc, int width, int height)
{
- long geom[2];
+ long geom[2], workareas[CALMWM_NGROUPS][4];
+ int i;
sc->xmax = geom[0] = width;
sc->ymax = geom[1] = height;
XChangeProperty(X_Dpy, sc->rootwin, _NET_DESKTOP_GEOMETRY,
XA_CARDINAL, 32, PropModeReplace, (unsigned char *)geom , 2);
+
+ /* x, y, width, height. XXX gap */
+ for (i = 0; i < CALMWM_NGROUPS; i++) {
+ workareas[i][0] = 0;
+ workareas[i][1] = 0;
+ workareas[i][2] = width;
+ workareas[i][3] = height;
+ }
+
+ XChangeProperty(X_Dpy, sc->rootwin, _NET_WORKAREA,
+ XA_CARDINAL, 32, PropModeReplace,
+ (unsigned char *)workareas, CALMWM_NGROUPS * 4);
}