OSDN Git Service

[changed] initial realId array is zero length.
authorbadlogicgames <badlogicgames@6c4fd544-2939-11df-bb46-9574ba5d0bfa>
Mon, 16 May 2011 21:16:25 +0000 (21:16 +0000)
committerbadlogicgames <badlogicgames@6c4fd544-2939-11df-bb46-9574ba5d0bfa>
Mon, 16 May 2011 21:16:25 +0000 (21:16 +0000)
backends/gdx-backend-android/src/com/badlogic/gdx/backends/android/AndroidInput.java

index 1c4c236..06ff80b 100644 (file)
@@ -87,7 +87,7 @@ public final class AndroidInput implements Input, OnKeyListener, OnTouchListener
        int[] touchX = new int[20];\r
        int[] touchY = new int[20];\r
        boolean[] touched = new boolean[20];\r
-       int[] realId = new int[20];\r
+       int[] realId = new int[0];\r
        final boolean hasMultitouch;\r
        private HashSet<Integer> keys = new HashSet<Integer>();\r
        private SensorManager manager;\r
@@ -475,7 +475,11 @@ public final class AndroidInput implements Input, OnKeyListener, OnTouchListener
                for(int i = 0; i < len; i++) {\r
                        if(realId[i] == -1) return i;\r
                }\r
-               return -1;\r
+               \r
+               int[] tmp = new int[realId.length + 1];\r
+               System.arraycopy(realId, 0, tmp, 0, realId.length);\r
+               realId = tmp;\r
+               return tmp.length - 1;\r
        }\r
        \r
        public int lookUpPointerIndex(int pointerId) {\r
@@ -483,6 +487,7 @@ public final class AndroidInput implements Input, OnKeyListener, OnTouchListener
                for(int i = 0; i < len; i++) {\r
                        if(realId[i] == pointerId) return i;\r
                }\r
+               \r
                return -1;\r
        }\r
 }\r