diff options
author | Doris Liu <tianliu@google.com> | 2013-10-18 17:15:30 -0700 |
---|---|---|
committer | Doris Liu <tianliu@google.com> | 2013-10-18 17:15:30 -0700 |
commit | 209a165bd776c938cad388fcf0b1ed27eef4ed83 (patch) | |
tree | 4c7465d2a317abd2fca4bd322bda8dd7f7d19105 /src/com/android | |
parent | 8470cae9049959ee6bb28cde1c53185f2ffd10a1 (diff) | |
download | android_packages_apps_Snap-209a165bd776c938cad388fcf0b1ed27eef4ed83.tar.gz android_packages_apps_Snap-209a165bd776c938cad388fcf0b1ed27eef4ed83.tar.bz2 android_packages_apps_Snap-209a165bd776c938cad388fcf0b1ed27eef4ed83.zip |
Fix SRI orientation on manta
Bug: 11292213
Change-Id: I7977de4c5bb906eec5431e706e28118837a682e7
Diffstat (limited to 'src/com/android')
-rw-r--r-- | src/com/android/camera/WideAnglePanoramaController.java | 2 | ||||
-rw-r--r-- | src/com/android/camera/WideAnglePanoramaModule.java | 7 | ||||
-rw-r--r-- | src/com/android/camera/WideAnglePanoramaUI.java | 9 |
3 files changed, 16 insertions, 2 deletions
diff --git a/src/com/android/camera/WideAnglePanoramaController.java b/src/com/android/camera/WideAnglePanoramaController.java index 6ac7c511d..d711c0942 100644 --- a/src/com/android/camera/WideAnglePanoramaController.java +++ b/src/com/android/camera/WideAnglePanoramaController.java @@ -30,4 +30,6 @@ public interface WideAnglePanoramaController { public void onShutterButtonClick(); public void onPreviewUILayoutChange(int l, int t, int r, int b); + + public int getCameraOrientation(); } diff --git a/src/com/android/camera/WideAnglePanoramaModule.java b/src/com/android/camera/WideAnglePanoramaModule.java index db4e59d2e..320b96086 100644 --- a/src/com/android/camera/WideAnglePanoramaModule.java +++ b/src/com/android/camera/WideAnglePanoramaModule.java @@ -647,6 +647,13 @@ public class WideAnglePanoramaModule return orientation; } + /** The orientation of the camera image. The value is the angle that the camera + * image needs to be rotated clockwise so it shows correctly on the display + * in its natural orientation. It should be 0, 90, 180, or 270.*/ + public int getCameraOrientation() { + return mCameraOrientation; + } + public void saveHighResMosaic() { runBackgroundThread(new Thread() { @Override diff --git a/src/com/android/camera/WideAnglePanoramaUI.java b/src/com/android/camera/WideAnglePanoramaUI.java index b0f3de40b..1546958de 100644 --- a/src/com/android/camera/WideAnglePanoramaUI.java +++ b/src/com/android/camera/WideAnglePanoramaUI.java @@ -434,8 +434,13 @@ public class WideAnglePanoramaUI implements } public void flipPreviewIfNeeded() { - if (CameraUtil.getDisplayRotation(mActivity) >= 180) { - // In either reverse landscape or reverse portrait + // Rotation needed to display image correctly clockwise + int cameraOrientation = mController.getCameraOrientation(); + // Display rotated counter-clockwise + int displayRotation = CameraUtil.getDisplayRotation(mActivity); + // Rotation needed to display image correctly on current display + int rotation = (cameraOrientation - displayRotation + 360) % 360; + if (rotation >= 180) { mTextureView.setRotation(180); } else { mTextureView.setRotation(0); |