Index: platform_tools/android/apps/viewer/src/main/java/org/skia/viewer/ViewerActivity.java |
diff --git a/platform_tools/android/apps/viewer/src/main/java/org/skia/viewer/ViewerActivity.java b/platform_tools/android/apps/viewer/src/main/java/org/skia/viewer/ViewerActivity.java |
index d6fe710aeb0fa8fa0f8a3b9daf2f8f11886de67b..49f711d517171556670b14cd8432a3cff7a2e474 100644 |
--- a/platform_tools/android/apps/viewer/src/main/java/org/skia/viewer/ViewerActivity.java |
+++ b/platform_tools/android/apps/viewer/src/main/java/org/skia/viewer/ViewerActivity.java |
@@ -32,6 +32,7 @@ public class ViewerActivity |
private native void onSurfaceChanged(long handle, Surface surface); |
private native void onSurfaceDestroyed(long handle); |
private native void onKeyPressed(long handle, int keycode); |
+ private native void onTouched(long handle, int owner, int state, float x, float y); |
@Override |
public boolean onCreateOptionsMenu(Menu menu) { |
@@ -96,6 +97,14 @@ public class ViewerActivity |
@Override |
public boolean onTouch(View v, MotionEvent event) { |
- return false; // TODO pass the touch event to native code |
+ int count = event.getPointerCount(); |
+ for (int i = 0; i < count; i++) { |
+ final float x = event.getX(i); |
+ final float y = event.getY(i); |
+ final int owner = event.getPointerId(i); |
+ int action = event.getAction() & MotionEvent.ACTION_MASK; |
+ onTouched(mApplication.getNativeHandle(), owner, action, x, y); |
+ } |
+ return true; |
} |
} |