projects
/
org.ibex.core.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
80b1c56
)
2002/06/04 19:57:19
author
megacz
<megacz@xwt.org>
Fri, 30 Jan 2004 06:47:50 +0000
(06:47 +0000)
committer
megacz
<megacz@xwt.org>
Fri, 30 Jan 2004 06:47:50 +0000
(06:47 +0000)
darcs-hash:
20040130064750
-2ba56-
38a24eaa65205e6256e273fcd76d6926a0980fd2
.gz
CHANGES
patch
|
blob
|
history
src/org/xwt/plat/Win32.cc
patch
|
blob
|
history
diff --git
a/CHANGES
b/CHANGES
index
c15cc96
..
84e4e40
100644
(file)
--- a/
CHANGES
+++ b/
CHANGES
@@
-180,3
+180,5
@@
01-Jun megacz POSIX.cc, POSIX.java: finally completed POSIX support
01-Jun megacz POSIX.cc, POSIX.java: finally completed POSIX support
+01-Jun megacz Win32.cc: attempted fix for international keyboards
+
diff --git
a/src/org/xwt/plat/Win32.cc
b/src/org/xwt/plat/Win32.cc
index
d2f699b
..
ef8d70f
100644
(file)
--- a/
src/org/xwt/plat/Win32.cc
+++ b/
src/org/xwt/plat/Win32.cc
@@
-821,13
+821,13
@@
jint org::xwt::plat::Win32$Win32Surface::WndProc(jint _hwnd, jint _iMsg, jint _w
static char keyarr [256] = { 0 };
static jstring keyToString(WPARAM wParam) {
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);
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");
switch (arr[0]) {
case '\t': return JvNewStringLatin1("tab");
case 0x1b: return JvNewStringLatin1("escape");