Author: jgardou Date: Mon Apr 19 02:11:30 2010 New Revision: 46933
URL: http://svn.reactos.org/svn/reactos?rev=46933&view=rev Log: [WIN32K] - Do not draw mouse when it has intentionnally been put away. Fixes some mouse-related graphical glitches
Modified: branches/reactos-yarotows/subsystems/win32/win32k/eng/mouse.c
Modified: branches/reactos-yarotows/subsystems/win32/win32k/eng/mouse.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/subsystems/win3... ============================================================================== --- branches/reactos-yarotows/subsystems/win32/win32k/eng/mouse.c [iso-8859-1] (original) +++ branches/reactos-yarotows/subsystems/win32/win32k/eng/mouse.c [iso-8859-1] Mon Apr 19 02:11:30 2010 @@ -385,7 +385,7 @@ pgp->HotSpot.y = yHot;
/* Calculate lDelta for our surfaces. */ - lDelta = DIB_GetDIBWidthBytes(pgp->Size.cx, + lDelta = DIB_GetDIBWidthBytes(pgp->Size.cx, BitsPerFormat(pso->iBitmapFormat));
rcl.left = 0; @@ -526,7 +526,7 @@ prcl->right = prcl->left + pgp->Size.cx; prcl->bottom = prcl->top + pgp->Size.cy; } - } + } else if (prcl != NULL) { prcl->left = prcl->top = prcl->right = prcl->bottom = -1; @@ -542,6 +542,8 @@ { SURFACE *psurf = CONTAINING_RECORD(pso, SURFACE, SurfObj); PPDEVOBJ ppdev = (PPDEVOBJ)pso->hdev; + if(ppdev->SafetyRemoveLevel) + return ;
SURFACE_LockBitmapBits(psurf); ppdev->pfnMovePointer(pso, x, y, prcl); @@ -654,7 +656,7 @@ { /* We have one, lock it */ psurfColor = SURFACE_ShareLockSurface(hbmColor); - + if (psurfColor) { /* Create an XLATEOBJ, no mono support */