summaryrefslogtreecommitdiffstats
path: root/packages/WallpaperCropper
diff options
context:
space:
mode:
authorSelim Cinek <cinek@google.com>2014-03-27 20:27:48 +0100
committerSelim Cinek <cinek@google.com>2014-03-27 19:34:01 +0000
commit7718fc1291c73576417f0c25d88f5105f7ae7365 (patch)
tree89d17f26fed058a6d0248613a6fde5490416d631 /packages/WallpaperCropper
parentecad0541a6e90b98ad96456c4e6992121ee8a789 (diff)
downloadframeworks_base-7718fc1291c73576417f0c25d88f5105f7ae7365.zip
frameworks_base-7718fc1291c73576417f0c25d88f5105f7ae7365.tar.gz
frameworks_base-7718fc1291c73576417f0c25d88f5105f7ae7365.tar.bz2
Fixed crash when setting wallpaper with built in rotation
If an image had a built in rotation, a crash could occur, when setting it. An example was a panorama image which had a rotation of 90 degrees Change-Id: Iede8226dac3a40f08d39a69162eb388e6aba97ec Bug: 13507421
Diffstat (limited to 'packages/WallpaperCropper')
-rw-r--r--packages/WallpaperCropper/src/com/android/wallpapercropper/WallpaperCropActivity.java13
1 files changed, 7 insertions, 6 deletions
diff --git a/packages/WallpaperCropper/src/com/android/wallpapercropper/WallpaperCropActivity.java b/packages/WallpaperCropper/src/com/android/wallpapercropper/WallpaperCropActivity.java
index 757a7a2..a070e5e 100644
--- a/packages/WallpaperCropper/src/com/android/wallpapercropper/WallpaperCropActivity.java
+++ b/packages/WallpaperCropper/src/com/android/wallpapercropper/WallpaperCropActivity.java
@@ -348,12 +348,6 @@ public class WallpaperCropActivity extends Activity {
Point inSize = mCropView.getSourceDimensions();
- // Due to rounding errors in the cropview renderer the edges can be slightly offset
- // therefore we ensure that the boundaries are sanely defined
- cropRect.left = Math.max(0, cropRect.left);
- cropRect.right = Math.min(inSize.x, cropRect.right);
- cropRect.top = Math.max(0, cropRect.top);
- cropRect.bottom = Math.min(inSize.y, cropRect.bottom);
int cropRotation = mCropView.getImageRotation();
float cropScale = mCropView.getWidth() / (float) cropRect.width();
@@ -364,6 +358,13 @@ public class WallpaperCropActivity extends Activity {
rotatedInSize[0] = Math.abs(rotatedInSize[0]);
rotatedInSize[1] = Math.abs(rotatedInSize[1]);
+ // Due to rounding errors in the cropview renderer the edges can be slightly offset
+ // therefore we ensure that the boundaries are sanely defined
+ cropRect.left = Math.max(0, cropRect.left);
+ cropRect.right = Math.min(rotatedInSize[0], cropRect.right);
+ cropRect.top = Math.max(0, cropRect.top);
+ cropRect.bottom = Math.min(rotatedInSize[1], cropRect.bottom);
+
// ADJUST CROP WIDTH
// Extend the crop all the way to the right, for parallax
// (or all the way to the left, in RTL)