From 9cfdd611031ca76c7530a36cd534ccd8be853a3d Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sun, 3 Feb 2013 19:42:55 +0100 Subject: [PATCH] (Android) Reimplement 'touchscreen is always player 1 and doesn't take up a slot' --- android/native/jni/input_android.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/android/native/jni/input_android.c b/android/native/jni/input_android.c index 168d2268bb..3679c30ce6 100644 --- a/android/native/jni/input_android.c +++ b/android/native/jni/input_android.c @@ -113,9 +113,14 @@ static void android_input_poll(void *data) int type_event = AInputEvent_getType(event); int state_id = -1; - for (unsigned i = 0; i < pads_connected; i++) - if (state_device_ids[i] == id) - state_id = i; + if (source & (AINPUT_SOURCE_TOUCHSCREEN | AINPUT_SOURCE_MOUSE | AINPUT_SOURCE_TOUCHPAD)) + state_id = 0; // touch overlay is always player 1 + else + { + for (unsigned i = 0; i < pads_connected; i++) + if (state_device_ids[i] == id) + state_id = i; + } if (state_id < 0) { @@ -214,7 +219,7 @@ static void android_input_poll(void *data) *key |= input_state; } - if(volume_enable && (keycode == AKEYCODE_VOLUME_UP || keycode == AKEYCODE_VOLUME_DOWN)) + if((keycode == AKEYCODE_VOLUME_UP || keycode == AKEYCODE_VOLUME_DOWN) && keycode_lut[keycode] == 0) handled = 0; }