From: Andy Spencer Date: Mon, 9 Jul 2012 05:41:38 +0000 (+0000) Subject: Configure window when set to stack mode X-Git-Url: http://pileus.org/git/?p=wmpus;a=commitdiff_plain;h=f4ecdada45354c19e46d860a4563305780060635 Configure window when set to stack mode This matches the win32 behavior and prevents stacked windows from overlapping each other. This causes some flickering in pidign, possibly because the text area overlaps the menu bar when the window is shaded. --- diff --git a/sys-x11.c b/sys-x11.c index c55e537..68baaee 100644 --- a/sys-x11.c +++ b/sys-x11.c @@ -32,6 +32,7 @@ /* Configuration */ static int border = 2; static int no_capture = 0; +static int stack = 25; /* Internal structures */ struct win_sys { @@ -584,6 +585,8 @@ void sys_show(win_t *win, state_t state) break; case ST_SHADE: printf("sys_show: shade %p\n", win); + XConfigureWindow(win->sys->dpy, win->sys->xid, CWHeight, + &(XWindowChanges){ .height = stack }); XMapWindow(win->sys->dpy, win->sys->xid); break; case ST_ICON: @@ -667,6 +670,7 @@ win_t *sys_init(void) Window xid; /* Load configuration */ + stack = conf_get_int("main.stack", stack); border = conf_get_int("main.border", border); no_capture = conf_get_int("main.no-capture", no_capture);