diff --git a/project/java/Video.java b/project/java/Video.java index c7daee6df..bed3c5982 100644 --- a/project/java/Video.java +++ b/project/java/Video.java @@ -22,15 +22,29 @@ import android.widget.TextView; import java.lang.Thread; import java.util.concurrent.locks.ReentrantLock; import android.os.Build; +import java.lang.reflect.Method; + abstract class DifferentTouchInput { public static DifferentTouchInput getInstance() { - if (Integer.parseInt(Build.VERSION.SDK) <= 4) - return SingleTouchInput.Holder.sInstance; - else + boolean multiTouchAvailable1 = false; + boolean multiTouchAvailable2 = false; + // Not checking for getX(int), getY(int) etc 'cause I'm lazy + Method methods [] = MotionEvent.class.getDeclaredMethods(); + for(Method m: methods) + { + if( m.getName().equals("getPointerCount") ) + multiTouchAvailable1 = true; + if( m.getName().equals("getPointerId") ) + multiTouchAvailable2 = true; + } + + if (multiTouchAvailable1 && multiTouchAvailable2) return MultiTouchInput.Holder.sInstance; + else + return SingleTouchInput.Holder.sInstance; } public abstract void process(final MotionEvent event); private static class SingleTouchInput extends DifferentTouchInput diff --git a/project/jni/application/src b/project/jni/application/src index 57d37d935..f36c75d23 120000 --- a/project/jni/application/src +++ b/project/jni/application/src @@ -1 +1 @@ -pachi \ No newline at end of file +scummvm \ No newline at end of file