Final fix for Bluetooth keyboards

This commit is contained in:
artdeell 2020-12-31 18:51:56 +03:00
parent a17ba2170f
commit 83251c7bbe
3 changed files with 14 additions and 19 deletions

View File

@ -181,7 +181,7 @@ public class AndroidLWJGLKeycode {
CallbackBridge.holdingShift = keyEvent.isShiftPressed(); CallbackBridge.holdingShift = keyEvent.isShiftPressed();
try { try {
if (!CallbackBridge.isGrabbing() && keyEvent.getScanCode() == 0) { if (!CallbackBridge.isGrabbing()) {
/* /*
if (keyEvent.isPrintingKey()) { if (keyEvent.isPrintingKey()) {
BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()), (char) keyEvent.getUnicodeChar(keyEvent.getMetaState()), keyEvent.getScanCode(), CallbackBridge.getCurrentMods(), isDown); BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()), (char) keyEvent.getUnicodeChar(keyEvent.getMetaState()), keyEvent.getScanCode(), CallbackBridge.getCurrentMods(), isDown);
@ -189,12 +189,10 @@ public class AndroidLWJGLKeycode {
BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()), keyEvent.getDisplayLabel(), keyEvent.getScanCode(), CallbackBridge.getCurrentMods(), isDown); BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()), keyEvent.getDisplayLabel(), keyEvent.getScanCode(), CallbackBridge.getCurrentMods(), isDown);
} }
*/ */
if(keyEvent.isPrintingKey()) {
System.out.println(((int)keyEvent.getDisplayLabel()) + " " +keyEvent.getDisplayLabel()); System.out.println(((int)keyEvent.getDisplayLabel()) + " " +keyEvent.getDisplayLabel());
if(keyEvent.getUnicodeChar() != 0) {
char key = (char)keyEvent.getUnicodeChar(); char key = (char)keyEvent.getUnicodeChar();
BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()),key,0,CallbackBridge.getCurrentMods(),keyEvent.getAction() == KeyEvent.ACTION_DOWN); BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()),key,0,CallbackBridge.getCurrentMods(),keyEvent.getAction() == KeyEvent.ACTION_DOWN);
}else if(androidToLwjglMap.get(keyEvent.getKeyCode()) == 32) {
BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()),' ',0,CallbackBridge.getCurrentMods(),keyEvent.getAction() == KeyEvent.ACTION_DOWN);
}else{ }else{
BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()),CallbackBridge.getCurrentMods(),keyEvent.getAction()==KeyEvent.ACTION_DOWN); BaseMainActivity.sendKeyPress(androidToLwjglMap.get(keyEvent.getKeyCode()),CallbackBridge.getCurrentMods(),keyEvent.getAction()==KeyEvent.ACTION_DOWN);
} }

View File

@ -755,7 +755,17 @@ public class BaseMainActivity extends LoggableActivity {
} }
*/ */
//private Dialog menuDial; //private Dialog menuDial;
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
AndroidLWJGLKeycode.execKey(event,keyCode,false);
return true;
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
AndroidLWJGLKeycode.execKey(event,keyCode,true);
return true;
}
@Override @Override
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
@ -1039,7 +1049,7 @@ public class BaseMainActivity extends LoggableActivity {
// Prevent back // Prevent back
// Catch back as Esc keycode at another place // Catch back as Esc keycode at another place
// sendKeyPress(LWJGLGLFWKeycode.GLFW_KEY_ESCAPE); sendKeyPress(LWJGLGLFWKeycode.GLFW_KEY_ESCAPE);
} }
public void hideKeyboard() { public void hideKeyboard() {

View File

@ -37,19 +37,6 @@ public class MinecraftGLView extends TextureView
return new BaseInputConnection(this,false); return new BaseInputConnection(this,false);
} }
} }
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
AndroidLWJGLKeycode.execKey(event,keyCode,false);
return true;
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
AndroidLWJGLKeycode.execKey(event,keyCode,true);
return true;
}
@Override @Override
public boolean onCheckIsTextEditor() { public boolean onCheckIsTextEditor() {
return false; return false;