Index: Screen.c =================================================================== RCS file: /cvs/xorg/xc/programs/Xserver/hw/xnest/Screen.c,v retrieving revision 1.3 diff -u -p -r1.3 Screen.c --- Screen.c 11 Aug 2004 22:40:14 -0000 1.3 +++ Screen.c 15 Feb 2005 13:26:29 -0000 @@ -360,6 +360,11 @@ xnestOpenScreen(int index, ScreenPtr pSc if (!miScreenDevPrivateInit(pScreen, xnestWidth, NULL)) return FALSE; +#ifdef SHAPE + /* overwrite miSetShape with our own */ + pScreen->SetShape = xnestSetShape; +#endif /* SHAPE */ + /* devPrivates */ #define POSITION_OFFSET (pScreen->myNum * (xnestWidth + xnestHeight) / 32) Index: Window.c =================================================================== RCS file: /cvs/xorg/xc/programs/Xserver/hw/xnest/Window.c,v retrieving revision 1.2 diff -u -p -r1.2 Window.c --- Window.c 23 Apr 2004 19:54:21 -0000 1.2 +++ Window.c 15 Feb 2005 13:26:29 -0000 @@ -449,6 +449,13 @@ xnestWindowExposures(WindowPtr pWin, Reg } #ifdef SHAPE +void +xnestSetShape(WindowPtr pWin) +{ + xnestShapeWindow(pWin); + miSetShape(pWin); +} + static Bool xnestRegionEqual(RegionPtr pReg1, RegionPtr pReg2) { Index: XNWindow.h =================================================================== RCS file: /cvs/xorg/xc/programs/Xserver/hw/xnest/XNWindow.h,v retrieving revision 1.2 diff -u -p -r1.2 XNWindow.h --- XNWindow.h 23 Apr 2004 19:54:21 -0000 1.2 +++ XNWindow.h 15 Feb 2005 13:26:29 -0000 @@ -73,6 +73,7 @@ void xnestClipNotify(WindowPtr pWin, int void xnestWindowExposures(WindowPtr pWin, RegionPtr pRgn, RegionPtr other_exposed); #ifdef SHAPE +void xnestSetShape(WindowPtr pWin); void xnestShapeWindow(WindowPtr pWin); #endif /* SHAPE */