Merge pull request #11796 from RameshRavone/back_event

Handling BackPress event [Android]
This commit is contained in:
Rémi Verschelde 2017-10-12 20:12:00 +02:00 committed by GitHub
commit fd8a71397d
2 changed files with 13 additions and 2 deletions

View file

@ -191,6 +191,7 @@ public class Godot extends Activity implements SensorEventListener, IDownloaderC
protected void onMainPause() {}
protected void onMainResume() {}
protected void onMainDestroy() {}
protected boolean onMainBackPressed() { return false; }
protected void onGLDrawFrame(GL10 gl) {}
protected void onGLSurfaceChanged(GL10 gl, int width, int height) {} // singletons will always miss first onGLSurfaceChanged call
@ -727,9 +728,19 @@ public class Godot extends Activity implements SensorEventListener, IDownloaderC
*/
@Override public void onBackPressed() {
boolean shouldQuit = true;
for(int i=0;i<singleton_count;i++) {
if (singletons[i].onMainBackPressed()) {
shouldQuit = false;
}
}
System.out.printf("** BACK REQUEST!\n");
GodotLib.quit();
if (shouldQuit) {
GodotLib.quit();
}
}
public void forceQuit() {

View file

@ -264,7 +264,7 @@ public class GodotView extends GLSurfaceView implements InputDeviceListener {
@Override public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
GodotLib.quit();
activity.onBackPressed();
// press 'back' button should not terminate program
// normal handle 'back' event in game logic
return true;