From: Curtis L. Olson Date: Wed, 5 Feb 2014 16:04:18 +0000 (-0600) Subject: Add an 'overrideRedirect' flag to the window configuration section. For X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=d306e94c1c144e1d785e2e0077d0c76c662c3d63;p=flightgear.git Add an 'overrideRedirect' flag to the window configuration section. For multi-headed Gnome based linux systems, this provides an extra hint that we really wish to open up our full screen window spanning all physical displays. This works around a kink in the gnome window manager where it tries to "lie" to applications about the full screen size assuming most applications don't wish their windows to span multiple physical displays. --- diff --git a/src/Viewer/WindowBuilder.cxx b/src/Viewer/WindowBuilder.cxx index f48ea0e1d..cae0038fd 100644 --- a/src/Viewer/WindowBuilder.cxx +++ b/src/Viewer/WindowBuilder.cxx @@ -177,6 +177,7 @@ GraphicsWindow* WindowBuilder::buildWindow(const SGPropertyNode* winNode) traitsSet |= setFromProperty(traits->screenNum, winNode, "screen"); const SGPropertyNode* fullscreenNode = winNode->getNode("fullscreen"); + const SGPropertyNode* ordNode = winNode->getNode("overrideRedirect"); if (fullscreenNode && fullscreenNode->getBoolValue()) { // fullscreen mode @@ -187,6 +188,8 @@ GraphicsWindow* WindowBuilder::buildWindow(const SGPropertyNode* winNode) traits->width = width; traits->height = height; traits->supportsResize = false; + bool overrideRedirect = ordNode && ordNode->getBoolValue(); + traits->overrideRedirect = overrideRedirect; traits->x = 0; traits->y = 0; traitsSet = 1;