Post

Note for Windows PC users - apologies for the shift keys not working properly. I've mapped left shift to CAPS SHIFT and right shift to SYMBOL SHIFT. For some reason a KEYUP event consistently goes missing when you hold both shift keys then release one or both. Works fine on Linux and Mac.

0 reposts5 likes

windows treats modifier state as unified , e.g. here both shift keys, but will only send one keyup when the last is released. you can call getkeystate for vk_lshit and rshift on every shift event (keyup, down, syskeyup, etc) like bool ls = GetKeyState(VK_LSHIFT) & 0x8000) != 0 . or raw input.

Indeed, that's pretty much what I'm seeing, and I can also confirm that the shift keys can be read correctly using GetKeyState. The key up/down events are all I've got to work with at the moment as it needs to be cross-platform. I'll come back to it when I've got more time on my hands.