diff options
author | Ruben Brunk <rubenbrunk@google.com> | 2013-04-11 18:01:25 -0700 |
---|---|---|
committer | Ruben Brunk <rubenbrunk@google.com> | 2013-04-11 19:39:18 -0700 |
commit | 22596004f272da6b07b91d791540e9bb85ff5a17 (patch) | |
tree | 253c5effe9463d19eaff43b9887c5a619a35dd1a | |
parent | 6c5f5f43f18b466e7a51b8ebcd133e81029dba67 (diff) | |
download | android_packages_apps_Snap-22596004f272da6b07b91d791540e9bb85ff5a17.tar.gz android_packages_apps_Snap-22596004f272da6b07b91d791540e9bb85ff5a17.tar.bz2 android_packages_apps_Snap-22596004f272da6b07b91d791540e9bb85ff5a17.zip |
G+ crop overlay shadows. Aspect ratios.
Bug: 8597538
Change-Id: I9a7225a125bef7e11d6bf420bf1fa55e7f22c909
3 files changed, 13 insertions, 3 deletions
diff --git a/src/com/android/gallery3d/filtershow/crop/CropDrawingUtils.java b/src/com/android/gallery3d/filtershow/crop/CropDrawingUtils.java index 749ba0e29..483cb6372 100644 --- a/src/com/android/gallery3d/filtershow/crop/CropDrawingUtils.java +++ b/src/com/android/gallery3d/filtershow/crop/CropDrawingUtils.java @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package com.android.gallery3d.filtershow.crop; import android.graphics.Canvas; @@ -91,6 +92,15 @@ public abstract class CropDrawingUtils { } } + public static void drawShadows(Canvas canvas, Paint p, RectF innerBounds, RectF outerBounds) { + canvas.drawRect(outerBounds.left, outerBounds.top, innerBounds.right, innerBounds.top, p); + canvas.drawRect(innerBounds.right, outerBounds.top, outerBounds.right, innerBounds.bottom, + p); + canvas.drawRect(innerBounds.left, innerBounds.bottom, outerBounds.right, + outerBounds.bottom, p); + canvas.drawRect(outerBounds.left, innerBounds.top, innerBounds.left, outerBounds.bottom, p); + } + public static Matrix getBitmapToDisplayMatrix(RectF imageBounds, RectF displayBounds) { Matrix m = new Matrix(); CropDrawingUtils.setBitmapToDisplayMatrix(m, imageBounds, displayBounds); diff --git a/src/com/android/gallery3d/filtershow/crop/CropMath.java b/src/com/android/gallery3d/filtershow/crop/CropMath.java index 5914f1cb8..52b11a56b 100644 --- a/src/com/android/gallery3d/filtershow/crop/CropMath.java +++ b/src/com/android/gallery3d/filtershow/crop/CropMath.java @@ -194,9 +194,9 @@ public class CropMath { float finalW = origW; float finalH = origH; if (origA < a) { - finalH = origH / a; + finalH = origW / a; } else { - finalW = origW * a; + finalW = origH * a; } float centX = r.centerX(); float centY = r.centerY(); diff --git a/src/com/android/gallery3d/filtershow/crop/CropObject.java b/src/com/android/gallery3d/filtershow/crop/CropObject.java index 08cf158e1..7999b4878 100644 --- a/src/com/android/gallery3d/filtershow/crop/CropObject.java +++ b/src/com/android/gallery3d/filtershow/crop/CropObject.java @@ -166,7 +166,7 @@ public class CropObject { throw new IllegalArgumentException("bad edge selected"); // return false; } - if ((mFixAspectRatio && !checkCorner(edge)) && !checkBlock(edge)) { + if ((mFixAspectRatio && !checkCorner(edge)) && !checkBlock(edge) && edge != MOVE_NONE) { // temporary throw new IllegalArgumentException("bad corner selected"); // return false; |