summaryrefslogtreecommitdiff
path: root/platform/android
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android')
-rw-r--r--platform/android/java/src/com/android/godot/Godot.java10
-rw-r--r--platform/android/java/src/com/android/godot/GodotView.java16
2 files changed, 16 insertions, 10 deletions
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