From 3d464eb3cab331b966ec71cff8fffe25668e3b2a Mon Sep 17 00:00:00 2001 From: Olivier Fourdan <fourdan.olivier@wanadoo.fr> Date: Fri, 3 Nov 2006 19:30:56 +0000 Subject: [PATCH] Resize the frame before the client, otherwise OOo 1.1.x gets totally confused on resize. (Old svn revision: 23616) --- src/client.c | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/src/client.c b/src/client.c index fc34ab39d..e371363d5 100644 --- a/src/client.c +++ b/src/client.c @@ -593,29 +593,25 @@ clientConfigureWindows (Client * c, XWindowChanges * wc, unsigned long mask, uns unsigned long change_mask; XWindowChanges change_values; - if ((mask & (CWWidth | CWHeight)) || (flags & CFG_FORCE_REDRAW)) + change_mask = (mask & (CWX | CWY | CWWidth | CWHeight)); + if (flags & CFG_FORCE_REDRAW) { - change_mask = (mask & (CWWidth | CWHeight)); - change_values.width = c->width; - change_values.height = c->height; - - if (flags & CFG_FORCE_REDRAW) - { - change_mask |= (CWX | CWY); - change_values.x = frameLeft (c); - change_values.y = frameTop (c); - } - XConfigureWindow (clientGetXDisplay (c), c->window, change_mask, &change_values); + change_mask |= (CWX | CWY); } - if (mask & (CWX | CWY | CWWidth | CWHeight)) + + if (change_mask & (CWX | CWY | CWWidth | CWHeight)) { - change_mask = (mask & (CWX | CWY | CWWidth | CWHeight)); change_values.x = frameX (c); change_values.y = frameY (c); change_values.width = frameWidth (c); change_values.height = frameHeight (c); - XConfigureWindow (clientGetXDisplay (c), c->frame, change_mask, &change_values); + + change_values.x = frameLeft (c); + change_values.y = frameTop (c); + change_values.width = c->width; + change_values.height = c->height; + XConfigureWindow (clientGetXDisplay (c), c->window, change_mask, &change_values); } } -- GitLab