OSDN Git Service

miniglx: fixup use of create windows x and y coordinates
authorDave Airlie <airlied@linux.ie>
Tue, 8 May 2007 00:51:44 +0000 (10:51 +1000)
committerDave Airlie <airlied@linux.ie>
Tue, 8 May 2007 00:51:44 +0000 (10:51 +1000)
This makes miniglx take not of the x and y from XCreateWindow

src/glx/mini/miniglx.c

index ce45d37..71a0658 100644 (file)
@@ -1528,8 +1528,8 @@ XCreateWindow( Display *dpy, Window parent, int x, int y,
    }
 
    /* init other per-window fields */
-   win->x = 0;
-   win->y = 0;
+   win->x = x;
+   win->y = y;
    win->w = width;
    win->h = height;
    win->visual = visual;  /* ptr assignment */
@@ -1537,7 +1537,7 @@ XCreateWindow( Display *dpy, Window parent, int x, int y,
    win->bytesPerPixel = dpy->driverContext.cpp;
    win->rowStride = dpy->driverContext.shared.virtualWidth * win->bytesPerPixel;
    win->size = win->rowStride * height; 
-   win->frontStart = dpy->driverContext.FBAddress;
+   win->frontStart = dpy->driverContext.FBAddress + (win->rowStride * win->x) + (win->y * win->bytesPerPixel);
    win->frontBottom = (GLubyte *) win->frontStart + (height-1) * win->rowStride;
 
    /* This is incorrect: the hardware driver could put the backbuffer