diff options
author | Michael Kolb <kolby@google.com> | 2013-05-30 13:40:28 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2013-05-30 13:40:28 -0700 |
commit | 26b52f3c12169a5776f948a89bb0bcc900a0c356 (patch) | |
tree | 1d9fff87a51bcb024b52b8c725799d51248977e8 /src/com/android | |
parent | 4dbf12d1a01e400ccb4d6dc1a5bbc5ca1dfa178a (diff) | |
parent | 3fac84150826c68fbb1607f7151328ee4ad17f3c (diff) | |
download | android_packages_apps_Gallery2-26b52f3c12169a5776f948a89bb0bcc900a0c356.tar.gz android_packages_apps_Gallery2-26b52f3c12169a5776f948a89bb0bcc900a0c356.tar.bz2 android_packages_apps_Gallery2-26b52f3c12169a5776f948a89bb0bcc900a0c356.zip |
am 3fac8415: am af65d7ba: Merge "Add HTC One picture resolutions" into gb-ub-photos-bryce
* commit '3fac84150826c68fbb1607f7151328ee4ad17f3c':
Add HTC One picture resolutions
Diffstat (limited to 'src/com/android')
-rw-r--r-- | src/com/android/camera/PhotoModule.java | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java index 5b352719f..e88645d27 100644 --- a/src/com/android/camera/PhotoModule.java +++ b/src/com/android/camera/PhotoModule.java @@ -1628,6 +1628,8 @@ public class PhotoModule return; // Exiting, so no need to get the surface texture. } mUI.setSurfaceTexture(screenNail.getSurfaceTexture()); + } else { + updatePreviewSize(screenNail); } mCameraDevice.setDisplayOrientation(mCameraDisplayOrientation); Object st = mUI.getSurfaceTexture(); @@ -1649,6 +1651,21 @@ public class PhotoModule } } + private void updatePreviewSize(CameraScreenNail snail) { + Size size = mParameters.getPreviewSize(); + int w = size.width; + int h = size.height; + if (mCameraDisplayOrientation % 180 != 0) { + w = size.height; + h = size.width; + } + if (snail.getWidth() != w || snail.getHeight() != h) { + snail.setSize(w, h); + } + snail.enableAspectRatioClamping(); + mActivity.notifyScreenNailChanged(); + } + @Override public void stopPreview() { if (mCameraDevice != null && mCameraState != PREVIEW_STOPPED) { @@ -1742,10 +1759,14 @@ public class PhotoModule Size original = mParameters.getPreviewSize(); if (!original.equals(optimalSize)) { mParameters.setPreviewSize(optimalSize.width, optimalSize.height); - // Zoom related settings will be changed for different preview // sizes, so set and read the parameters to get latest values - mCameraDevice.setParameters(mParameters); + if (mHandler.getLooper() == Looper.myLooper()) { + // On UI thread only, not when camera starts up + setupPreview(); + } else { + mCameraDevice.setParameters(mParameters); + } mParameters = mCameraDevice.getParameters(); } Log.v(TAG, "Preview size is " + optimalSize.width + "x" + optimalSize.height); |