Author: fireball Date: Mon Oct 12 20:10:24 2009 New Revision: 43409
URL: http://svn.reactos.org/svn/reactos?rev=43409&view=rev Log: - Remove PatBlt driver routine and instead call it from StretchBlt handler. Unregresses arwinss after syncing. Mouse cursor is still totally broken though.
Modified: branches/arwinss/reactos/dll/win32/winent.drv/gdidrv.c
Modified: branches/arwinss/reactos/dll/win32/winent.drv/gdidrv.c URL: http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/dll/win32/winent... ============================================================================== --- branches/arwinss/reactos/dll/win32/winent.drv/gdidrv.c [iso-8859-1] (original) +++ branches/arwinss/reactos/dll/win32/winent.drv/gdidrv.c [iso-8859-1] Mon Oct 12 20:10:24 2009 @@ -398,31 +398,6 @@ return FALSE; }
-#if 0 -BOOL CDECL RosDrv_PatBlt( NTDRV_PDEVICE *physDev, INT left, INT top, INT width, INT height, DWORD rop ) -{ - POINT pts[2], ptBrush; - - /* Map coordinates */ - pts[0].x = left; - pts[0].y = top; - pts[1].x = left + width; - pts[1].y = top + height; - - LPtoDP(physDev->hUserDC, pts, 2); - width = pts[1].x - pts[0].x; - height = pts[1].y - pts[0].y; - left = pts[0].x; - top = pts[0].y; - - /* Update brush origin */ - GetBrushOrgEx(physDev->hUserDC, &ptBrush); - RosGdiSetBrushOrg(physDev->hKernelDC, ptBrush.x, ptBrush.y); - - return RosGdiPatBlt(physDev->hKernelDC, left, top, width, height, rop); -} -#endif - BOOL CDECL RosDrv_Pie( NTDRV_PDEVICE *physDev, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend ) { @@ -777,8 +752,16 @@ GetBrushOrgEx(physDevDst->hUserDC, &ptBrush); RosGdiSetBrushOrg(physDevDst->hKernelDC, ptBrush.x, ptBrush.y);
- return RosGdiStretchBlt(physDevDst->hKernelDC, xDst, yDst, widthDst, heightDst, - physDevSrc->hKernelDC, xSrc, ySrc, widthSrc, heightSrc, rop); + if (!physDevSrc) + { + /* This is PatBlt */ + return RosGdiPatBlt(physDevDst->hKernelDC, xDst, yDst, widthDst, heightDst, rop); + } + else + { + return RosGdiStretchBlt(physDevDst->hKernelDC, xDst, yDst, widthDst, heightDst, + physDevSrc->hKernelDC, xSrc, ySrc, widthSrc, heightSrc, rop); + } }
BOOL CDECL RosDrv_SwapBuffers(NTDRV_PDEVICE *physDev)