be6d3d4043064ec7e27ba9a348d7f12dcd593562
This only deals with buttons being held, so won't cause performance issues. This deals with a general problem of the input layer: you can query the current state of the inputs, but inputs are received in a queue, causing inconsistencies. This is why pressing enter during a load, then holding Alt after pressing it, causes the game to switch fullscreen after the load finishes; checking for "alt-enter" should be checking if Alt was pressed when Enter was pressed, not whether it's pressed right now. Similarly, CodeDetector has difficulty handling a "Right-Left" and a "Left-Right" code simultaneously. If both buttons are pressed quickly, it needs to check whether Right was pressed at the time Left was reported, not at the time EnteredCode was called.
Languages
C++
85.7%
Lua
4.3%
C
4.3%
Rich Text Format
2.3%
CMake
1.1%
Other
2%