Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7718fc12 authored by Selim Cinek's avatar Selim Cinek
Browse files

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
parent ecad0541
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -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)