01-Jun megacz POSIX.cc, POSIX.java: finally completed POSIX support
+01-Jun megacz Win32.cc: attempted fix for international keyboards
+
static char keyarr [256] = { 0 };
static jstring keyToString(WPARAM wParam) {
- char arr[4];
+ char arr[8];
keyarr[VK_CAPITAL] = GetKeyState(VK_CAPITAL);
keyarr[VK_LSHIFT] = GetKeyState(VK_LSHIFT);
keyarr[VK_RSHIFT] = GetKeyState(VK_RSHIFT);
keyarr[VK_SHIFT] = GetKeyState(VK_SHIFT);
-
- if (ToAscii(wParam, 0, (BYTE*)keyarr, (WORD*)arr, 0) == 1) {
+
+ if (ToAsciiEx(wParam, 0, (BYTE*)keyarr, (WORD*)arr, 0, GetKeyboardLayout(0)) == 1) {
switch (arr[0]) {
case '\t': return JvNewStringLatin1("tab");
case 0x1b: return JvNewStringLatin1("escape");