diff options
author | Usagi Ito <usagi@WonderRabbitProject.net> | 2014-04-16 11:58:39 +0900 |
---|---|---|
committer | Usagi Ito <usagi@WonderRabbitProject.net> | 2014-04-16 21:09:18 +0900 |
commit | 2ad10704eb9102b4f7781528b16c508f3e5c3410 (patch) | |
tree | bbe11f851ec1ecc2797c85adb35f7df9ad800dba | |
parent | 6960d2296299e96d43e694806f5d35799ef8d39c (diff) |
fix SDL_GetKeyboardState not based on scanCode bug
-rw-r--r-- | src/library_sdl.js | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/library_sdl.js b/src/library_sdl.js index cadc3aee..0704dbab 100644 --- a/src/library_sdl.js +++ b/src/library_sdl.js @@ -539,8 +539,11 @@ var LibrarySDL = { } else { code = SDL.keyCodes[event.keyCode] || event.keyCode; } + + var scan = code & ~(1 << 10); + scan = SDL.scanCodes[scan] || scan; - {{{ makeSetValue('SDL.keyboardState', 'code', 'down', 'i8') }}}; + {{{ makeSetValue('SDL.keyboardState', 'scan', 'down', 'i8') }}}; // TODO: lmeta, rmeta, numlock, capslock, KMOD_MODE, KMOD_RESERVED SDL.modState = ({{{ makeGetValue('SDL.keyboardState', '1248', 'i8') }}} ? 0x0040 | 0x0080 : 0) | // KMOD_LCTRL & KMOD_RCTRL ({{{ makeGetValue('SDL.keyboardState', '1249', 'i8') }}} ? 0x0001 | 0x0002 : 0) | // KMOD_LSHIFT & KMOD_RSHIFT |