diff options
author | Michael Kolb <kolby@google.com> | 2012-10-01 20:24:35 -0700 |
---|---|---|
committer | Michael Kolb <kolby@google.com> | 2012-10-01 20:24:35 -0700 |
commit | e506ca46fc7f22e2196487ecceea94534c971171 (patch) | |
tree | 2c54ae922a4ce658831a2f14ccbf4b88221bc43e /src | |
parent | f1f3d8f514fc8e30632ca0935bf030d2b7b7262b (diff) | |
download | Camera-e506ca46fc7f22e2196487ecceea94534c971171.tar.gz |
Switch to zoom mode when zoom gesture starts
Bug: 7265719
Change-Id: Ib3c2e8cc13a0f3cb1b830a6fac5868fddca1549c
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/camera/PreviewGestures.java | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/com/android/camera/PreviewGestures.java b/src/com/android/camera/PreviewGestures.java index e62e2ab4..7af97c64 100644 --- a/src/com/android/camera/PreviewGestures.java +++ b/src/com/android/camera/PreviewGestures.java @@ -136,7 +136,15 @@ public class PreviewGestures } else if (mMode == MODE_NONE) { return false; } else if (mMode == MODE_PIE) { - return sendToPie(m); + if (MotionEvent.ACTION_POINTER_DOWN == m.getActionMasked()) { + sendToPie(makeCancelEvent(m)); + if (mZoom != null) { + onScaleBegin(mScale); + } + } else { + return sendToPie(m); + } + return true; } else if (mMode == MODE_ZOOM && mScale.isInProgress()) { return mScale.onTouchEvent(m); } else if (mMode == MODE_MODULE) { @@ -251,9 +259,13 @@ public class PreviewGestures } public void cancelActivityTouchHandling(MotionEvent m) { + mActivity.superDispatchTouchEvent(makeCancelEvent(m)); + } + + private MotionEvent makeCancelEvent(MotionEvent m) { MotionEvent c = MotionEvent.obtain(m); c.setAction(MotionEvent.ACTION_CANCEL); - mActivity.superDispatchTouchEvent(c); + return c; } private void openPie() { |