diff options
author | Doris Liu <tianliu@google.com> | 2013-06-11 22:34:22 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2013-06-11 22:34:23 +0000 |
commit | 5791e2fbe36756806339182fcde4ce058ec1d203 (patch) | |
tree | 9bf070f0c9649915b6caed71ca46f6919aec6ea0 /src/com/android | |
parent | 1e2b3f8be10ca20f6807ed71f160d6f6a8ab1c81 (diff) | |
parent | e991ac8d67ffa09ee285e72ad275d32475de2ded (diff) | |
download | android_packages_apps_Snap-5791e2fbe36756806339182fcde4ce058ec1d203.tar.gz android_packages_apps_Snap-5791e2fbe36756806339182fcde4ce058ec1d203.tar.bz2 android_packages_apps_Snap-5791e2fbe36756806339182fcde4ce058ec1d203.zip |
Merge "Disable zoom when camera does not support zoom" into gb-ub-photos-carlsbad
Diffstat (limited to 'src/com/android')
-rw-r--r-- | src/com/android/camera/NewPhotoModule.java | 2 | ||||
-rw-r--r-- | src/com/android/camera/NewPhotoUI.java | 1 | ||||
-rw-r--r-- | src/com/android/camera/NewPreviewGestures.java | 11 | ||||
-rw-r--r-- | src/com/android/camera/NewVideoModule.java | 1 | ||||
-rw-r--r-- | src/com/android/camera/NewVideoUI.java | 6 |
5 files changed, 19 insertions, 2 deletions
diff --git a/src/com/android/camera/NewPhotoModule.java b/src/com/android/camera/NewPhotoModule.java index 9911e8f4b..cd3281476 100644 --- a/src/com/android/camera/NewPhotoModule.java +++ b/src/com/android/camera/NewPhotoModule.java @@ -542,6 +542,8 @@ public class NewPhotoModule mFocusManager.setParameters(mInitialParams); setupPreview(); + // reset zoom value index + mZoomValue = 0; openCameraCommon(); if (ApiHelper.HAS_SURFACE_TEXTURE) { diff --git a/src/com/android/camera/NewPhotoUI.java b/src/com/android/camera/NewPhotoUI.java index 4d9469743..2f29e440f 100644 --- a/src/com/android/camera/NewPhotoUI.java +++ b/src/com/android/camera/NewPhotoUI.java @@ -293,6 +293,7 @@ public class NewPhotoUI implements PieListener, mGestures = new NewPreviewGestures(mActivity, this, mZoomRenderer, mPieRenderer); mRenderOverlay.setGestures(mGestures); } + mGestures.setZoomEnabled(params.isZoomSupported()); mGestures.setRenderOverlay(mRenderOverlay); mRenderOverlay.requestLayout(); diff --git a/src/com/android/camera/NewPreviewGestures.java b/src/com/android/camera/NewPreviewGestures.java index 39c4be664..339c4b33f 100644 --- a/src/com/android/camera/NewPreviewGestures.java +++ b/src/com/android/camera/NewPreviewGestures.java @@ -69,6 +69,7 @@ public class NewPreviewGestures private int mMode; private int mSlop; private int mTapTimeout; + private boolean mZoomEnabled; private boolean mEnabled; private boolean mZoomOnly; private int mOrientation; @@ -148,6 +149,10 @@ public class NewPreviewGestures mEnabled = enabled; } + public void setZoomEnabled(boolean enable) { + mZoomEnabled = enable; + } + public void setZoomOnly(boolean zoom) { mZoomOnly = zoom; } @@ -178,7 +183,10 @@ public class NewPreviewGestures mScale.onTouchEvent(m); if (MotionEvent.ACTION_POINTER_DOWN == m.getActionMasked()) { mMode = MODE_ZOOM; - mZoom.onScaleBegin(mScale); + if (mZoomEnabled) { + // Start showing zoom UI as soon as there is a second finger down + mZoom.onScaleBegin(mScale); + } } else if (MotionEvent.ACTION_POINTER_UP == m.getActionMasked()) { mZoom.onScaleEnd(mScale); } @@ -241,6 +249,7 @@ public class NewPreviewGestures if (mPie == null || !mPie.isOpen()) { mMode = MODE_ZOOM; mGestureDetector.onTouchEvent(makeCancelEvent(mCurrent)); + if (!mZoomEnabled) return false; return mZoom.onScaleBegin(detector); } return false; diff --git a/src/com/android/camera/NewVideoModule.java b/src/com/android/camera/NewVideoModule.java index 188a38965..8bec332f9 100644 --- a/src/com/android/camera/NewVideoModule.java +++ b/src/com/android/camera/NewVideoModule.java @@ -2015,6 +2015,7 @@ public class NewVideoModule implements NewCameraModule, initializeVideoControl(); // From onResume + mZoomValue = 0; mUI.initializeZoom(mParameters); mUI.setOrientationIndicator(0, false); diff --git a/src/com/android/camera/NewVideoUI.java b/src/com/android/camera/NewVideoUI.java index 02c8e1c7a..9e2c10810 100644 --- a/src/com/android/camera/NewVideoUI.java +++ b/src/com/android/camera/NewVideoUI.java @@ -581,7 +581,11 @@ public class NewVideoUI implements PieRenderer.PieListener, } public void initializeZoom(Parameters param) { - if (param == null || !param.isZoomSupported()) return; + if (param == null || !param.isZoomSupported()) { + mGestures.setZoomEnabled(false); + return; + } + mGestures.setZoomEnabled(true); mZoomMax = param.getMaxZoom(); mZoomRatios = param.getZoomRatios(); // Currently we use immediate zoom for fast zooming to get better UX and |