|
|
|
@ -227,6 +227,7 @@ public class AndroidInput implements |
|
|
|
|
int pointerIndex = (event.getAction() & MotionEvent.ACTION_POINTER_INDEX_MASK) |
|
|
|
|
>> MotionEvent.ACTION_POINTER_INDEX_SHIFT; |
|
|
|
|
int pointerId = event.getPointerId(pointerIndex); |
|
|
|
|
Vector2f lastPos = lastPositions.get(pointerId); |
|
|
|
|
|
|
|
|
|
// final int historySize = event.getHistorySize();
|
|
|
|
|
//final int pointerCount = event.getPointerCount();
|
|
|
|
@ -240,6 +241,9 @@ public class AndroidInput implements |
|
|
|
|
touch.setPressure(event.getPressure(pointerIndex)); |
|
|
|
|
processEvent(touch); |
|
|
|
|
|
|
|
|
|
lastPos = new Vector2f(event.getX(pointerIndex), view.getHeight() - event.getY(pointerIndex)); |
|
|
|
|
lastPositions.put(pointerId, lastPos); |
|
|
|
|
|
|
|
|
|
bWasHandled = true; |
|
|
|
|
break; |
|
|
|
|
case MotionEvent.ACTION_POINTER_UP: |
|
|
|
@ -251,13 +255,14 @@ public class AndroidInput implements |
|
|
|
|
touch.setTime(event.getEventTime()); |
|
|
|
|
touch.setPressure(event.getPressure(pointerIndex)); |
|
|
|
|
processEvent(touch); |
|
|
|
|
lastPositions.remove(pointerId); |
|
|
|
|
|
|
|
|
|
bWasHandled = true; |
|
|
|
|
break; |
|
|
|
|
case MotionEvent.ACTION_MOVE: |
|
|
|
|
// Convert all pointers into events
|
|
|
|
|
for (int p = 0; p < event.getPointerCount(); p++) { |
|
|
|
|
Vector2f lastPos = lastPositions.get(p); |
|
|
|
|
lastPos = lastPositions.get(p); |
|
|
|
|
if (lastPos == null) { |
|
|
|
|
lastPos = new Vector2f(event.getX(p), view.getHeight() - event.getY(p)); |
|
|
|
|
lastPositions.put(event.getPointerId(p), lastPos); |
|
|
|
|