Revert "Prevent border drifting."
authorCarlos R. Mafra <crmafra@gmail.com>
Tue, 18 Dec 2012 18:18:14 +0000 (18 18:18 +0000)
committerCarlos R. Mafra <crmafra@gmail.com>
Tue, 18 Dec 2012 18:18:14 +0000 (18 18:18 +0000)
This reverts commit df601267e640ce7eb171f2ce5044915a3cc358b2.

Conflicts:
src/window.c

src/client.c
src/window.c

index 975adb1..ea72476 100644 (file)
@@ -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;
index 1cb384a..b794b2b 100644 (file)
@@ -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;