From ff52ef3996aac2b1abc1837f53e39e18ec199126 Mon Sep 17 00:00:00 2001 From: "Carlos R. Mafra" Date: Tue, 18 Dec 2012 18:18:14 +0000 Subject: [PATCH] Revert "Prevent border drifting." This reverts commit df601267e640ce7eb171f2ce5044915a3cc358b2. Conflicts: src/window.c --- src/client.c | 2 -- src/window.c | 29 +++++++---------------------- 2 files changed, 7 insertions(+), 24 deletions(-) diff --git a/src/client.c b/src/client.c index 975adb1d..ea724765 100644 --- a/src/client.c +++ b/src/client.c @@ -83,8 +83,6 @@ void wClientRestore(WWindow * wwin) #endif /* account for titlebar and border */ wwin->frame_y += wwin->frame->top_width; - wwin->frame_x -= wwin->old_border_width; - wwin->frame_y -= wwin->old_border_width; if (HAS_BORDER(wwin)) { wwin->frame_x += FRAME_BORDER_WIDTH; wwin->frame_y += FRAME_BORDER_WIDTH; diff --git a/src/window.c b/src/window.c index 1cb384a8..b794b2b5 100644 --- a/src/window.c +++ b/src/window.c @@ -1172,17 +1172,8 @@ WWindow *wManageWindow(WScreen *scr, Window window) } } - /* If this is a newly-mapped window which had a border, - * the absolute co-ordinates reported to us are actually - * the co-ordinates of the border. We, however, track - * the absolute co-ordinates of the client window, offset - * by the title bar and frame border. As a result - * we need to offset placement of the client by the border - * size so its position matches what we expect. */ - x += wwin->old_border_width; - y += wwin->old_border_width; - - /* wWindowConfigure() will init the client window's size + /* + * wWindowConfigure() will init the client window's size * (wwin->client.{width,height}) and all other geometry * related variables (frame_x,frame_y) */ wWindowConfigure(wwin, x, y, width, height); @@ -2222,9 +2213,7 @@ void wWindowConfigureBorders(WWindow *wwin) { if (wwin->frame) { int flags; - int newx, newy, oldh; - int border_width; - XWindowAttributes attr; + int newy, oldh; flags = WFF_LEFT_BUTTON | WFF_RIGHT_BUTTON; @@ -2242,17 +2231,13 @@ void wWindowConfigureBorders(WWindow *wwin) if (wwin->flags.shaded) flags |= WFF_IS_SHADED; - if (!XGetWindowAttributes(dpy, wwin->frame->core->window, &attr)) - attr.border_width = 0; - border_width = (flags & WFF_BORDER) ? FRAME_BORDER_WIDTH : 0; - oldh = wwin->frame->top_width + attr.border_width; + oldh = wwin->frame->top_width; wFrameWindowUpdateBorders(wwin->frame, flags); - if (oldh != wwin->frame->top_width + border_width) { - newx = wwin->frame_x + attr.border_width - border_width; - newy = wwin->frame_y + oldh - border_width - wwin->frame->top_width; + if (oldh != wwin->frame->top_width) { + newy = wwin->frame_y + oldh - wwin->frame->top_width; XMoveWindow(dpy, wwin->client_win, 0, wwin->frame->top_width); - wWindowConfigure(wwin, newx, newy, wwin->client.width, wwin->client.height); + wWindowConfigure(wwin, wwin->frame_x, newy, wwin->client.width, wwin->client.height); } flags = 0; -- 2.11.4.GIT