[Text input] Still trying to get unicode to work

This commit is contained in:
khanhduytran0 2020-11-29 14:46:35 +07:00
parent 403fe60d13
commit 328df2c889
2 changed files with 15 additions and 12 deletions

View File

@ -196,8 +196,8 @@ public class AndroidLWJGLKeycode {
try {
if (!CallbackBridge.isGrabbing()) {
if ((int) keyEvent.getUnicodeChar() != KeyEvent.KEYCODE_UNKNOWN) {
BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()), (char) keyEvent.getUnicodeChar(), keyEvent.getScanCode(), mods, isDown);
if (keyEvent.isPrintingKey()) {
BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()), (char) keyEvent.getUnicodeChar(keyEvent.getMetaState()), keyEvent.getScanCode(), mods, isDown);
} else if ((int) keyEvent.getDisplayLabel() != KeyEvent.KEYCODE_UNKNOWN) {
BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()), (char) keyEvent.getDisplayLabel(), keyEvent.getScanCode(), mods, isDown);
}

View File

@ -720,16 +720,19 @@ public class BaseMainActivity extends LoggableActivity {
}
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
AndroidLWJGLKeycode.execKey(event, keyCode, false);
return super.onKeyUp(keyCode, event);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
AndroidLWJGLKeycode.execKey(event, keyCode, true);
return super.onKeyDown(keyCode, event);
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
switch (event.getAction()) {
case KeyEvent.ACTION_DOWN:
AndroidLWJGLKeycode.execKey(event, event.getKeyCode(), true);
break;
case KeyEvent.ACTION_UP:
AndroidLWJGLKeycode.execKey(event, event.getKeyCode(), false);
break;
}
return super.dispatchKeyEvent(event);
}
//private Dialog menuDial;