From bae5ad7c8bc14c44a3222017ca7b561d7aa514be Mon Sep 17 00:00:00 2001 From: sanikoyes Date: Sun, 6 Apr 2014 21:53:38 +0800 Subject: Move onKeyDown/onKeyUp from Godot to GodotView Press 'back' button should not terminate program, normal handle 'back' event in game logic --- platform/android/java/src/com/android/godot/Godot.java | 10 ---------- .../android/java/src/com/android/godot/GodotView.java | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 10 deletions(-) (limited to 'platform/android/java/src') diff --git a/platform/android/java/src/com/android/godot/Godot.java b/platform/android/java/src/com/android/godot/Godot.java index 5a1bac5e86..0fa07e2490 100644 --- a/platform/android/java/src/com/android/godot/Godot.java +++ b/platform/android/java/src/com/android/godot/Godot.java @@ -346,16 +346,6 @@ public class Godot extends Activity implements SensorEventListener } - @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); - return super.onKeyDown(keyCode, event); - } - public PaymentsManager getPaymentsManager() { return mPaymentsManager; } diff --git a/platform/android/java/src/com/android/godot/GodotView.java b/platform/android/java/src/com/android/godot/GodotView.java index b5ab81cb24..1993be8d2c 100644 --- a/platform/android/java/src/com/android/godot/GodotView.java +++ b/platform/android/java/src/com/android/godot/GodotView.java @@ -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 -- cgit v1.2.3