mirror of
https://github.com/reactos/reactos.git
synced 2025-02-23 08:55:19 +00:00
- add new desktop and mouse property keys to registry
- disable global settings from _SYSTEM_CURSORINFO and change files accordingly - bind and load added registry keys for SystemParametersInfo - TODO: read and set via SystemParametersInfo still incomplete svn path=/trunk/; revision=43307
This commit is contained in:
parent
cf3f78eddf
commit
fca0dabc2d
7 changed files with 85 additions and 41 deletions
|
@ -13,6 +13,12 @@ HKCU,"Control Panel\Mouse","MouseThreshold1",0x00000002,"6"
|
|||
HKCU,"Control Panel\Mouse","MouseThreshold2",0x00000002,"10"
|
||||
HKCU,"Control Panel\Mouse","DoubleClickSpeed",0x00000002,"480"
|
||||
HKCU,"Control Panel\Mouse","SwapMouseButtons",0x00000002,"0"
|
||||
HKCU,"Control Panel\Mouse","MouseSensitivity",0x00000002,"10"
|
||||
HKCU,"Control Panel\Mouse","MouseHoverTime",0x00000002,"400"
|
||||
HKCU,"Control Panel\Mouse","MouseHoverWidth",0x00000002,"4"
|
||||
HKCU,"Control Panel\Mouse","MouseHoverHeight",0x00000002,"4"
|
||||
HKCU,"Control Panel\Mouse","DoubleClickWidth",0x00000002,"4"
|
||||
HKCU,"Control Panel\Mouse","DoubleClickHeight",0x00000002,"4"
|
||||
|
||||
HKCU,"Control Panel\Desktop","AutoEndTasks",0x00000002,"0"
|
||||
HKCU,"Control Panel\Desktop","CursorBlinkRate",0x00000002,"530"
|
||||
|
@ -22,6 +28,25 @@ HKCU,"Control Panel\Desktop","HungAppTimeout",0x00000002,"5000"
|
|||
HKCU,"Control Panel\Desktop","SCRNSAVE.EXE",0x00000000,""
|
||||
HKCU,"Control Panel\Desktop","WaitToKillAppTimeout",0x00000002,"20000"
|
||||
HKCU,"Control Panel\Desktop","Wallpaper",0x00000000,""
|
||||
HKCU,"Control Panel\Desktop","FontSmoothing",2,"0"
|
||||
HKCU,"Control Panel\Desktop","SmoothScroll",3,00,00,00,00
|
||||
HKCU,"Control Panel\Desktop","UserPreferenceMask",3,10,00,00,80
|
||||
HKCU,"Control Panel\Desktop","LowPowerActive",,"0"
|
||||
HKCU,"Control Panel\Desktop","MenuShowDelay",2,"400"
|
||||
HKCU,"Control Panel\Desktop","WheelScrollLines",2,"3"
|
||||
HKCU,"Control Panel\Desktop","WheelScrollChars",2,"3"
|
||||
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","ScrollWidth",2,"16"
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","ScrollHeight",2,"16"
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","CaptionWidth",2,"18"
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","CaptionHeight",2,"18"
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","SmCaptionWidth",2,"13"
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","SmCaptionHeight",2,"15"
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","MenuWidth",2,"18"
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","MenuHeight",2,"18"
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","BorderWidth",2,"1"
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","Shell Icon Size",2,"32"
|
||||
|
||||
HKCU,"Control Panel\International",,0x00000012
|
||||
HKCU,"Control Panel\International","Locale",0x00000000,"0409"
|
||||
HKCU,"Control Panel\International\Geo","Nation",0x00000000,"1"
|
||||
|
|
|
@ -11,8 +11,14 @@ HKCU,"Control Panel\Mouse","SnapToDefaultButton",0x00000002,"0"
|
|||
HKCU,"Control Panel\Mouse","MouseSpeed",0x00000002,"1"
|
||||
HKCU,"Control Panel\Mouse","MouseThreshold1",0x00000002,"6"
|
||||
HKCU,"Control Panel\Mouse","MouseThreshold2",0x00000002,"10"
|
||||
HKCU,"Control Panel\Mouse","DoubleClickSpeed",0x00000002,"480"
|
||||
HKCU,"Control Panel\Mouse","DoubleClickSpeed",0x00000002,"500"
|
||||
HKCU,"Control Panel\Mouse","SwapMouseButtons",0x00000002,"0"
|
||||
HKCU,"Control Panel\Mouse","MouseSensitivity",0x00000002,"10"
|
||||
HKCU,"Control Panel\Mouse","MouseHoverTime",0x00000002,"400"
|
||||
HKCU,"Control Panel\Mouse","MouseHoverWidth",0x00000002,"4"
|
||||
HKCU,"Control Panel\Mouse","MouseHoverHeight",0x00000002,"4"
|
||||
HKCU,"Control Panel\Mouse","DoubleClickWidth",0x00000002,"4"
|
||||
HKCU,"Control Panel\Mouse","DoubleClickHeight",0x00000002,"4"
|
||||
|
||||
HKCU,"Control Panel\Desktop","AutoEndTasks",0x00000002,"0"
|
||||
HKCU,"Control Panel\Desktop","CursorBlinkRate",0x00000002,"530"
|
||||
|
@ -27,6 +33,8 @@ HKCU,"Control Panel\Desktop","SmoothScroll",3,00,00,00,00
|
|||
HKCU,"Control Panel\Desktop","UserPreferenceMask",3,10,00,00,80
|
||||
HKCU,"Control Panel\Desktop","LowPowerActive",,"0"
|
||||
HKCU,"Control Panel\Desktop","MenuShowDelay",2,"400"
|
||||
HKCU,"Control Panel\Desktop","WheelScrollLines",2,"3"
|
||||
HKCU,"Control Panel\Desktop","WheelScrollChars",2,"3"
|
||||
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","ScrollWidth",2,"16"
|
||||
HKCU,"Control Panel\Desktop\WindowMetrics","ScrollHeight",2,"16"
|
||||
|
|
|
@ -41,14 +41,15 @@ typedef struct _CURSORACCELERATION_INFO
|
|||
typedef struct _SYSTEM_CURSORINFO
|
||||
{
|
||||
BOOL Enabled;
|
||||
BOOL SwapButtons;//
|
||||
// BOOL SwapButtons;
|
||||
UINT ButtonsDown;
|
||||
CURSORCLIP_INFO CursorClipInfo;
|
||||
PCURICON_OBJECT CurrentCursorObject;
|
||||
// UINT WheelScroLines;
|
||||
// UINT WheelScroChars;
|
||||
BYTE ShowingCursor;
|
||||
UINT DblClickSpeed;//
|
||||
/*
|
||||
UINT WheelScroLines;
|
||||
UINT WheelScroChars;
|
||||
UINT DblClickSpeed;
|
||||
UINT DblClickWidth;
|
||||
UINT DblClickHeight;
|
||||
|
||||
|
@ -56,9 +57,9 @@ typedef struct _SYSTEM_CURSORINFO
|
|||
UINT MouseHoverWidth;
|
||||
UINT MouseHoverHeight;
|
||||
|
||||
// UINT MouseSpeed;
|
||||
// CURSORACCELERATION_INFO CursorAccelerationInfo;
|
||||
|
||||
UINT MouseSpeed;
|
||||
CURSORACCELERATION_INFO CursorAccelerationInfo;
|
||||
*/
|
||||
DWORD LastBtnDown;
|
||||
LONG LastBtnDownX;
|
||||
LONG LastBtnDownY;
|
||||
|
|
|
@ -133,9 +133,9 @@ InitMetrics(VOID)
|
|||
piSysMet[SM_MOUSEPRESENT] = 1;
|
||||
piSysMet[SM_MOUSEWHEELPRESENT] = 1;
|
||||
piSysMet[SM_CMOUSEBUTTONS] = 2;
|
||||
piSysMet[SM_SWAPBUTTON] = gspv.bMouseBtnSwap ? 1 : 0; //CurInfo ? CurInfo->SwapButtons : 0;
|
||||
piSysMet[SM_CXDOUBLECLK] = gspv.iDblClickWidth;//CurInfo ? CurInfo->DblClickWidth : 4;
|
||||
piSysMet[SM_CYDOUBLECLK] = gspv.iDblClickHeight;//CurInfo ? CurInfo->DblClickWidth : 4;
|
||||
piSysMet[SM_SWAPBUTTON] = gspv.bMouseBtnSwap ? 1 : 0;
|
||||
piSysMet[SM_CXDOUBLECLK] = gspv.iDblClickWidth;
|
||||
piSysMet[SM_CYDOUBLECLK] = gspv.iDblClickHeight;
|
||||
#if (_WIN32_WINNT >= 0x0600)
|
||||
piSysMet[SM_MOUSEHORIZONTALWHEELPRESENT] = 0;
|
||||
#endif
|
||||
|
|
|
@ -251,7 +251,7 @@ MsqIsDblClk(LPMSG Msg, BOOL Remove)
|
|||
|
||||
CurInfo = IntGetSysCursorInfo(WinStaObject);
|
||||
Res = (Msg->hwnd == (HWND)CurInfo->LastClkWnd) &&
|
||||
((Msg->time - CurInfo->LastBtnDown) < CurInfo->DblClickSpeed);
|
||||
((Msg->time - CurInfo->LastBtnDown) < gspv.iDblClickTime);
|
||||
if(Res)
|
||||
{
|
||||
|
||||
|
@ -262,8 +262,8 @@ MsqIsDblClk(LPMSG Msg, BOOL Remove)
|
|||
if(dY < 0)
|
||||
dY = -dY;
|
||||
|
||||
Res = (dX <= CurInfo->DblClickWidth) &&
|
||||
(dY <= CurInfo->DblClickHeight);
|
||||
Res = (dX <= gspv.iDblClickWidth) &&
|
||||
(dY <= gspv.iDblClickHeight);
|
||||
|
||||
if(Res)
|
||||
{
|
||||
|
|
|
@ -52,6 +52,10 @@ static const WCHAR* VAL_DBLCLKHEIGHT = L"DoubleClickHeight";
|
|||
static const WCHAR* VAL_DBLCLKTIME = L"DoubleClickSpeed";
|
||||
static const WCHAR* VAL_SNAPDEFBTN = L"SnapToDefaultButton";
|
||||
static const WCHAR* VAL_SWAP = L"SwapMouseButtons";
|
||||
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* KEY_DESKTOP = L"Control Panel\\Desktop";
|
||||
static const WCHAR* VAL_SCRTO = L"ScreenSaveTimeOut";
|
||||
|
@ -61,6 +65,10 @@ static const WCHAR* VAL_DRAG = L"DragFullWindows";
|
|||
static const WCHAR* VAL_DRAGHEIGHT = L"DragHeight";
|
||||
static const WCHAR* VAL_DRAGWIDTH = L"DragWidth";
|
||||
static const WCHAR* VAL_FNTSMOOTH = L"FontSmoothing";
|
||||
static const WCHAR* VAL_SCRLLLINES = L"WheelScrollLines";
|
||||
#if (_WIN32_WINNT >= 0x0600)
|
||||
static const WCHAR* VAL_SCRLLCHARS = L"WheelScrollChars";
|
||||
#endif
|
||||
|
||||
static const WCHAR* KEY_MDALIGN = L"Software\\Microsoft\\Windows NT\\CurrentVersion\\Windows";
|
||||
static const WCHAR* VAL_MDALIGN = L"MenuDropAlignment";
|
||||
|
@ -179,14 +187,16 @@ SpiUpdatePerUserSystemParameters()
|
|||
/* Load mouse settings */
|
||||
gspv.caiMouse.FirstThreshold = SpiLoadMouse(VAL_MOUSE1, 6);
|
||||
gspv.caiMouse.SecondThreshold = SpiLoadMouse(VAL_MOUSE2, 10);
|
||||
gspv.caiMouse.Acceleration = SpiLoadMouse(VAL_MOUSE3, 1);
|
||||
gspv.caiMouse.Acceleration = gspv.iMouseSpeed = SpiLoadMouse(VAL_MOUSE3, 1);
|
||||
gspv.bMouseBtnSwap = SpiLoadMouse(VAL_SWAP, 0);
|
||||
gspv.bSnapToDefBtn = SpiLoadMouse(VAL_SNAPDEFBTN, 0);
|
||||
gspv.iMouseTrails = SpiLoadMouse(VAL_MOUSETRAILS, 0);
|
||||
gspv.iMouseSpeed = SpiLoadMouse(VAL_MOUSE3, 1);
|
||||
gspv.iDblClickTime = SpiLoadMouse(VAL_DBLCLKTIME, 480);
|
||||
gspv.iDblClickTime = SpiLoadMouse(VAL_DBLCLKTIME, 500);
|
||||
gspv.iDblClickWidth = SpiLoadMouse(VAL_DBLCLKWIDTH, 4);
|
||||
gspv.iDblClickHeight = SpiLoadMouse(VAL_DBLCLKHEIGHT, 4);
|
||||
gspv.iMouseHoverTime = SpiLoadMouse(VAL_HOVERTIME, 400);
|
||||
gspv.iMouseHoverWidth = SpiLoadMouse(VAL_HOVERWIDTH, 4);
|
||||
gspv.iMouseHoverHeight = SpiLoadMouse(VAL_HOVERHEIGHT, 4);
|
||||
|
||||
/* Load NONCLIENTMETRICS */
|
||||
gspv.ncm.cbSize = sizeof(NONCLIENTMETRICSW);
|
||||
|
@ -224,15 +234,12 @@ SpiUpdatePerUserSystemParameters()
|
|||
|
||||
/* Load desktop settings */
|
||||
gspv.bDragFullWindows = SpiLoadInt(KEY_DESKTOP, VAL_DRAG, 0);
|
||||
gspv.iWheelScrollLines = SpiLoadInt(KEY_DESKTOP, VAL_SCRLLLINES, 3);
|
||||
#if (_WIN32_WINNT >= 0x0600)
|
||||
gspv.iWheelScrollChars = SpiLoadInt(KEY_DESKTOP, VAL_SCRLLCHARS, 3);
|
||||
#endif
|
||||
|
||||
/* Some hardcoded values for now */
|
||||
gspv.iMouseHoverTime = 80;
|
||||
gspv.iMouseHoverWidth = 4;
|
||||
gspv.iMouseHoverHeight = 4;
|
||||
gspv.iWheelScrollLines = 3;
|
||||
#if (_WIN32_WINNT >= 0x0600)
|
||||
gspv.uiWheelScrollChars = 1;
|
||||
#endif
|
||||
|
||||
gspv.tmCaptionFont.tmAveCharWidth = 6;
|
||||
gspv.bBeep = TRUE;
|
||||
|
@ -1083,13 +1090,13 @@ SpiGetSet(UINT uiAction, UINT uiParam, PVOID pvParam, FLONG fl)
|
|||
return SpiGetInt(pvParam, &gspv.iMouseTrails, fl);
|
||||
|
||||
case SPI_SETMOUSETRAILS:
|
||||
return SpiSetInt(&gspv.iMouseTrails, uiParam, KEY_MOUSE, L"MouseTrails", fl);
|
||||
return SpiSetInt(&gspv.iMouseTrails, uiParam, KEY_MOUSE, VAL_MOUSETRAILS, fl);
|
||||
|
||||
case SPI_GETSNAPTODEFBUTTON:
|
||||
return SpiGetInt(pvParam, &gspv.bSnapToDefBtn, fl);
|
||||
|
||||
case SPI_SETSNAPTODEFBUTTON:
|
||||
return SpiSetBool(&gspv.bSnapToDefBtn, uiParam, KEY_MOUSE, L"SnapToDefaultButton", fl);
|
||||
return SpiSetBool(&gspv.bSnapToDefBtn, uiParam, KEY_MOUSE, VAL_SNAPDEFBTN, fl);
|
||||
|
||||
case SPI_GETMOUSEHOVERWIDTH:
|
||||
return SpiGetInt(pvParam, &gspv.iMouseHoverWidth, fl);
|
||||
|
|
|
@ -538,23 +538,26 @@ NtUserCreateWindowStation(
|
|||
CurInfo->CurrentCursorObject = NULL;
|
||||
CurInfo->ShowingCursor = 0;
|
||||
|
||||
/* FIXME: Obtain the following information from the registry */
|
||||
/*
|
||||
// not used anymore
|
||||
CurInfo->WheelScroLines = gspv.iWheelScrollLines;
|
||||
#if (_WIN32_WINNT >= 0x0600)
|
||||
CurInfo->WheelScroChars = gspv.iWheelScrollChars;
|
||||
#endif
|
||||
CurInfo->SwapButtons = gspv.bMouseBtnSwap;
|
||||
CurInfo->DblClickSpeed = gspv.iDblClickTime;
|
||||
CurInfo->DblClickWidth = gspv.iDblClickWidth;
|
||||
CurInfo->DblClickHeight = gspv.iDblClickHeight;
|
||||
|
||||
// CurInfo->WheelScroLines = 3;
|
||||
// CurInfo->WheelScroChars = 3;
|
||||
CurInfo->SwapButtons = FALSE;
|
||||
CurInfo->DblClickSpeed = 500;
|
||||
CurInfo->DblClickWidth = 4;
|
||||
CurInfo->DblClickHeight = 4;
|
||||
CurInfo->MouseSpeed = gspv.iMouseSpeed;
|
||||
CurInfo->CursorAccelerationInfo.FirstThreshold = gspv.caiMouse.FirstThreshold;
|
||||
CurInfo->CursorAccelerationInfo.SecondThreshold = gspv.caiMouse.SecondThreshold;
|
||||
CurInfo->CursorAccelerationInfo.Acceleration = gspv.caiMouse.Acceleration;
|
||||
|
||||
// CurInfo->MouseSpeed = 10;
|
||||
// CurInfo->CursorAccelerationInfo.FirstThreshold = 6;
|
||||
// CurInfo->CursorAccelerationInfo.SecondThreshold = 10;
|
||||
// CurInfo->CursorAccelerationInfo.Acceleration = 1;
|
||||
|
||||
// CurInfo->MouseHoverTime = 80;
|
||||
// CurInfo->MouseHoverWidth = 4;
|
||||
// CurInfo->MouseHoverHeight = 4;
|
||||
CurInfo->MouseHoverTime = gspv.iMouseHoverTime;
|
||||
CurInfo->MouseHoverWidth = gspv.iMouseHoverWidth;
|
||||
CurInfo->MouseHoverHeight = gspv.iMouseHoverHeight;
|
||||
*/
|
||||
|
||||
// WindowStationObject->ScreenSaverActive = FALSE;
|
||||
// WindowStationObject->ScreenSaverTimeOut = 10;
|
||||
|
|
Loading…
Reference in a new issue