Author: gadamopoulos
Date: Mon Feb 20 18:05:33 2012
New Revision: 55758

URL: http://svn.reactos.org/svn/reactos?rev=55758&view=rev
Log:
[win32k]
- Fix SPI_SETMOUSESPEED
- Patch by Edijs Kolesnikovics, termined...@yahoo.com 

Modified:
    trunk/reactos/subsystems/win32/win32k/ntuser/sysparams.c

Modified: trunk/reactos/subsystems/win32/win32k/ntuser/sysparams.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntuser/sysparams.c?rev=55758&r1=55757&r2=55758&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/sysparams.c [iso-8859-1] 
(original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/sysparams.c [iso-8859-1] Mon 
Feb 20 18:05:33 2012
@@ -45,7 +45,7 @@
 static const WCHAR* VAL_HOVERTIME = L"MouseHoverTime";
 static const WCHAR* VAL_HOVERWIDTH = L"MouseHoverWidth";
 static const WCHAR* VAL_HOVERHEIGHT = L"MouseHoverHeight";
-//static const WCHAR* VAL_SENSITIVITY = L"MouseSensitivity";
+static const WCHAR* VAL_SENSITIVITY = L"MouseSensitivity";
 
 static const WCHAR* KEY_DESKTOP = L"Control Panel\\Desktop";
 static const WCHAR* VAL_SCRTO = L"ScreenSaveTimeOut";
@@ -220,7 +220,8 @@
     /* Load mouse settings */
     gspv.caiMouse.FirstThreshold = SpiLoadMouse(VAL_MOUSE1, 6);
     gspv.caiMouse.SecondThreshold = SpiLoadMouse(VAL_MOUSE2, 10);
-    gspv.caiMouse.Acceleration = gspv.iMouseSpeed = SpiLoadMouse(VAL_MOUSE3, 
1);
+    gspv.caiMouse.Acceleration = SpiLoadMouse(VAL_MOUSE3, 1);
+    gspv.iMouseSpeed = SpiLoadMouse(VAL_SENSITIVITY, 10);
     gspv.bMouseBtnSwap = SpiLoadMouse(VAL_SWAP, 0);
     gspv.bSnapToDefBtn = SpiLoadMouse(VAL_SNAPDEFBTN, 0);
     gspv.iMouseTrails = SpiLoadMouse(VAL_MOUSETRAILS, 0);
@@ -1262,8 +1263,13 @@
             return SpiGetInt(pvParam, &gspv.iMouseSpeed, fl);
 
         case SPI_SETMOUSESPEED:
-            // vgl SETMOUSE
-            return SpiSetInt(&gspv.iMouseSpeed, uiParam, KEY_MOUSE, 
VAL_MOUSE3, fl);
+        {
+            /* Allowed range is [1:20] */
+            if ((INT_PTR)pvParam < 1 || (INT_PTR)pvParam > 20)
+                return 0;
+            else
+                return SpiSetInt(&gspv.iMouseSpeed, (INT_PTR)pvParam, 
KEY_MOUSE, VAL_SENSITIVITY, fl);
+        }
 
         case SPI_GETSCREENSAVERRUNNING:
             return SpiGetInt(pvParam, &gspv.bScrSaverRunning, fl);


Reply via email to