|
@@ -98,8 +98,24 @@ public class GodotView extends GLSurfaceView {
|
|
|
return activity.gotTouchEvent(event);
|
|
|
};
|
|
|
|
|
|
+ @Override public boolean onKeyUp(int keyCode, KeyEvent event) {
|
|
|
+ GodotLib.key(keyCode, event.getUnicodeChar(0), false);
|
|
|
+ return super.onKeyUp(keyCode, event);
|
|
|
+ };
|
|
|
+
|
|
|
+ @Override public boolean onKeyDown(int keyCode, KeyEvent event) {
|
|
|
+ GodotLib.key(keyCode, event.getUnicodeChar(0), true);
|
|
|
+ if (keyCode == KeyEvent.KEYCODE_BACK) {
|
|
|
+ // press 'back' button should not terminate program
|
|
|
+ // normal handle 'back' event in game logic
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ return super.onKeyDown(keyCode, event);
|
|
|
+ }
|
|
|
+
|
|
|
private void init(boolean translucent, int depth, int stencil) {
|
|
|
|
|
|
+ this.setFocusableInTouchMode(true);
|
|
|
/* By default, GLSurfaceView() creates a RGB_565 opaque surface.
|
|
|
* If we want a translucent one, we should change the surface's
|
|
|
* format here, using PixelFormat.TRANSLUCENT for GL Surfaces
|