From f9e6f8ba4b4649db4d46d016af678e82520b0993 Mon Sep 17 00:00:00 2001 From: Michael Stapelberg Date: Mon, 15 Mar 2010 22:17:00 +0100 Subject: [PATCH] Bugfix: Correctly stack windows when new windows are opened while in fullscreen mode This fixes ticket #195. --- src/manage.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/manage.c b/src/manage.c index b14f73e8..40ef6cca 100644 --- a/src/manage.c +++ b/src/manage.c @@ -400,9 +400,15 @@ void reparent_window(xcb_connection_t *conn, xcb_window_t child, if (new->workspace->fullscreen_client != NULL) { DLOG("Setting below fullscreen window\n"); - /* If we are in fullscreen, we should lower the window to not be annoying */ - uint32_t values[] = { XCB_STACK_MODE_BELOW }; - xcb_configure_window(conn, new->frame, XCB_CONFIG_WINDOW_STACK_MODE, values); + /* If we are in fullscreen, we should place the window below + * the fullscreen window to not be annoying */ + uint32_t values[] = { + new->workspace->fullscreen_client->frame, + XCB_STACK_MODE_BELOW + }; + xcb_configure_window(conn, new->frame, + XCB_CONFIG_WINDOW_SIBLING | + XCB_CONFIG_WINDOW_STACK_MODE, values); } /* Insert into the currently active container, if it’s not a dock window */