Menu

#1 Fixed Broken Keydown event

_Version_0.9.3
closed-accepted
5
2006-07-31
2006-07-31
No

The section of InputReader.cs that sends key up and
keypressed events looks like:

for (int i = 0; i < lastKeys.Length; i++)
{
if (!keyIsStillUp[i])
{
Key lastKey = lastKeys[i];
KeyboardInputEvent(KeyboardInputEventType.KeyUp,
lastKey);

KeyboardInputEvent(KeyboardInputEventType.KeyPressed,
lastKey);
}
}

but should look like:

for (int i = 0; i < lastKeys.Length; i++)
{
Key lastKey = lastKeys[i];
if (!keyIsStillUp[i])
{
KeyboardInputEvent(KeyboardInputEventType.KeyUp,
lastKey);
} else {

KeyboardInputEvent(KeyboardInputEventType.KeyPressed,
lastKey);
}
}

Discussion

  • Tommi Laukkanen

    Tommi Laukkanen - 2006-07-31
    • assigned_to: nobody --> tlaukkan
    • status: open --> closed-fixed
     
  • Tommi Laukkanen

    Tommi Laukkanen - 2006-07-31

    Logged In: YES
    user_id=1393420

    Thanks good patch! One wonders what one was thinking when
    writing this piece of code.

    Renamed keyIsStillUp->isStillDown and made the suggested fix
    resulting the following code:

    if (isStillDown[i])
    {
    KeyboardInputEvent(KeyboardInputEventType.KeyPressed, lastKey);
    }
    else
    {
    KeyboardInputEvent(KeyboardInputEventType.KeyUp, lastKey);
    }

     
  • Tommi Laukkanen

    Tommi Laukkanen - 2006-07-31
    • status: closed-fixed --> closed-accepted
     
  • Tommi Laukkanen

    Tommi Laukkanen - 2006-07-31
    • labels: --> RetinaX Core
    • milestone: --> _Version_0.9.3
     

Log in to post a comment.