summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/Util.java
diff options
context:
space:
mode:
authorWu-cheng Li <wuchengli@google.com>2010-09-15 16:48:40 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2010-09-15 16:48:40 -0700
commitda395f80c71733e46736927f84e731066346f95e (patch)
tree754d7024708b83a38db4908bf4171be533dda868 /src/com/android/camera/Util.java
parentb5ec9823f642decda6467e55dc1fd806d000bb75 (diff)
parent50ab7fd18e8a631237f7546cd25af974e3e30dcb (diff)
downloadLegacyCamera-da395f80c71733e46736927f84e731066346f95e.tar.gz
LegacyCamera-da395f80c71733e46736927f84e731066346f95e.tar.bz2
LegacyCamera-da395f80c71733e46736927f84e731066346f95e.zip
am 50ab7fd1: Merge "Fix the wrong rotation on naturally landscape devices." into gingerbread
Merge commit '50ab7fd18e8a631237f7546cd25af974e3e30dcb' * commit '50ab7fd18e8a631237f7546cd25af974e3e30dcb': Fix the wrong rotation on naturally landscape devices.
Diffstat (limited to 'src/com/android/camera/Util.java')
-rw-r--r--src/com/android/camera/Util.java23
1 files changed, 13 insertions, 10 deletions
diff --git a/src/com/android/camera/Util.java b/src/com/android/camera/Util.java
index 2af46fdd..db174be3 100644
--- a/src/com/android/camera/Util.java
+++ b/src/com/android/camera/Util.java
@@ -283,21 +283,24 @@ public class Util {
return x;
}
- public static void setCameraDisplayOrientation(Activity activity,
- int cameraId, android.hardware.Camera camera) {
- android.hardware.Camera.CameraInfo info =
- new android.hardware.Camera.CameraInfo();
- android.hardware.Camera.getCameraInfo(cameraId, info);
+ public static int getDisplayRotation(Activity activity) {
int rotation = activity.getWindowManager().getDefaultDisplay()
.getRotation();
- int degrees = 0;
switch (rotation) {
- case Surface.ROTATION_0: degrees = 0; break;
- case Surface.ROTATION_90: degrees = 90; break;
- case Surface.ROTATION_180: degrees = 180; break;
- case Surface.ROTATION_270: degrees = 270; break;
+ case Surface.ROTATION_0: return 0;
+ case Surface.ROTATION_90: return 90;
+ case Surface.ROTATION_180: return 180;
+ case Surface.ROTATION_270: return 270;
}
+ return 0;
+ }
+ public static void setCameraDisplayOrientation(Activity activity,
+ int cameraId, android.hardware.Camera camera) {
+ android.hardware.Camera.CameraInfo info =
+ new android.hardware.Camera.CameraInfo();
+ android.hardware.Camera.getCameraInfo(cameraId, info);
+ int degrees = getDisplayRotation(activity);
int result = (info.mOrientation - degrees + 360) % 360;
camera.setDisplayOrientation(result);
}