Author: tkreuzer
Date: Sat Aug  8 04:42:41 2009
New Revision: 42489

URL: http://svn.reactos.org/svn/reactos?rev=42489&view=rev
Log:
[win32k]
- Use DIB_GetDIBWidthBytes and BitsPerFormat instead of switch
- Add SPS_CHANGE flag when calling IntEngSetPointerShape
- Fixes VMWare Driver mouse pointer regression

Modified:
    trunk/reactos/subsystems/win32/win32k/eng/mouse.c

Modified: trunk/reactos/subsystems/win32/win32k/eng/mouse.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/eng/mouse.c?rev=42489&r1=42488&r2=42489&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/eng/mouse.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/eng/mouse.c [iso-8859-1] Sat Aug  8 
04:42:41 2009
@@ -382,30 +382,8 @@
     pgp->HotSpot.y = yHot;
 
     /* Calculate lDelta for our surfaces. */
-    switch (pso->iBitmapFormat)
-    {
-        case BMF_1BPP:
-            lDelta = pgp->Size.cx >> 3;
-            break;
-        case BMF_4BPP:
-            lDelta = pgp->Size.cx >> 1;
-            break;
-        case BMF_8BPP:
-            lDelta = pgp->Size.cx;
-            break;
-        case BMF_16BPP:
-            lDelta = pgp->Size.cx << 1;
-            break;
-        case BMF_24BPP:
-            lDelta = pgp->Size.cx * 3;
-            break;
-        case BMF_32BPP:
-            lDelta = pgp->Size.cx << 2;
-            break;
-        default:
-            lDelta = 0;
-            break;
-    }
+    lDelta = DIB_GetDIBWidthBytes(pgp->Size.cx, 
+                                  BitsPerFormat(pso->iBitmapFormat));
 
     rcl.left = 0;
     rcl.top = 0;
@@ -690,7 +668,7 @@
                                      x,
                                      y,
                                      &pdc->ppdev->Pointer.Exclude,
-                                     fl);
+                                     fl | SPS_CHANGE);
 
     /* Cleanup */
     if (hbmColor)


Reply via email to