From 34e4291de2c261f9dd047a7e18cf46eeaf84662a Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Thu, 7 Feb 2019 23:04:23 +0100 Subject: Screen.c: simplify and fix handling of rootless mode Fixes: ArcticaProject/nx-libs#765 --- nx-X11/programs/Xserver/hw/nxagent/Screen.c | 40 ++++++++++++----------------- 1 file changed, 17 insertions(+), 23 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Screen.c b/nx-X11/programs/Xserver/hw/nxagent/Screen.c index 19057dfe1..103cd1dbf 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Screen.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Screen.c @@ -1050,8 +1050,22 @@ Bool nxagentOpenScreen(ScreenPtr pScreen, nxagentChangeOption(RootY, (h - nxagentOption(RootHeight)) / 2); } } - else + else if (nxagentOption(Rootless)) { + nxagentChangeOption(X, 0); + nxagentChangeOption(Y, 0); + + nxagentChangeOption(RootX, 0); + nxagentChangeOption(RootY, 0); + + nxagentChangeOption(RootWidth, w); + nxagentChangeOption(RootHeight, h); + + nxagentChangeOption(Width, w); + nxagentChangeOption(Height, h); + } + else /* window mode */ + { /* * screen is initialized for the first time */ @@ -1080,26 +1094,12 @@ Bool nxagentOpenScreen(ScreenPtr pScreen, if (nxagentOption(Width) > w) { - if (nxagentOption(Rootless)) - { - nxagentChangeOption(Width, w); - } - else - { - nxagentChangeOption(Width, w * 3 / 4); - } + nxagentChangeOption(Width, w * 3 / 4); } if (nxagentOption(Height) > h) { - if (nxagentOption(Rootless)) - { - nxagentChangeOption(Height, h); - } - else - { - nxagentChangeOption(Height, h * 3 / 4); - } + nxagentChangeOption(Height, h * 3 / 4); } /* @@ -1135,12 +1135,6 @@ Bool nxagentOpenScreen(ScreenPtr pScreen, nxagentChangeOption(SavedHeight, nxagentOption(RootHeight)); } - if (nxagentOption(Rootless)) - { - nxagentChangeOption(RootWidth, w); - nxagentChangeOption(RootHeight, h); - } - nxagentChangeOption(SavedRootWidth, nxagentOption(RootWidth)); nxagentChangeOption(SavedRootHeight, nxagentOption(RootHeight)); -- cgit v1.2.3