Browse Source

Fixes bug where avatar run-lock state can get confused after alt-tabbing

tickets/36/36/1
Adam Johnson 2 years ago committed by ZarothYe
parent
commit
69dac251b6
  1. 10
      Sources/Plasma/PubUtilLib/plInputCore/plInputDevice.cpp

10
Sources/Plasma/PubUtilLib/plInputCore/plInputDevice.cpp

@ -176,19 +176,16 @@ void plKeyboardDevice::HandleKeyEvent(plOSMsg message, plKeyDef key, bool bKeyDo
if (key == KEY_SHIFT)
{
fShiftKeyDown = bKeyDown;
// return;
}
if (key == KEY_CTRL)
{
fCtrlKeyDown = bKeyDown;
// return;
}
if (key == KEY_CAPSLOCK)
{
// Keyboards toggle the light on key-down, so I'm going with that.
if (bKeyDown && !bKeyRepeat)
if (!bKeyRepeat)
{
fCapsLockLock = !fCapsLockLock;
fCapsLockLock = (GetKeyState(KEY_CAPSLOCK) & 1) == 1;
plAvatarInputInterface::GetInstance()->ForceAlwaysRun(fCapsLockLock);
}
}
@ -208,7 +205,8 @@ void plKeyboardDevice::HandleWindowActivate(bool bActive, HWND hWnd)
{
if (bActive)
{
fCtrlKeyDown = false;
// Refresh the caps lock state
HandleKeyEvent(KEYDOWN, KEY_CAPSLOCK, nil, false);
}
else
{

Loading…
Cancel
Save