From 952144dd3146a195ea4bd0be3f88275df8b31c64 Mon Sep 17 00:00:00 2001 From: nicolasroard Date: Wed, 28 Nov 2012 16:35:47 -0800 Subject: Fix moving points in the Curves editor bug:7632994 Change-Id: Ibd0b22594ad9be52e32ea860976861e4619fb513 --- src/com/android/gallery3d/filtershow/ui/ImageCurves.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/com/android/gallery3d/filtershow/ui/ImageCurves.java b/src/com/android/gallery3d/filtershow/ui/ImageCurves.java index c4ca900e1..405524862 100644 --- a/src/com/android/gallery3d/filtershow/ui/ImageCurves.java +++ b/src/com/android/gallery3d/filtershow/ui/ImageCurves.java @@ -43,6 +43,7 @@ public class ImageCurves extends ImageSlave { private boolean mDidAddPoint = false; private boolean mDidDelete = false; private ControlPoint mCurrentControlPoint = null; + private int mCurrentPick = -1; private ImagePreset mLastPreset = null; int[] redHistogram = new int[256]; int[] greenHistogram = new int[256]; @@ -186,6 +187,7 @@ public class ImageCurves extends ImageSlave { if (e.getActionMasked() == MotionEvent.ACTION_UP) { mCurrentControlPoint = null; + mCurrentPick = -1; updateCachedImage(); mDidAddPoint = false; if (mDidDelete) { @@ -205,8 +207,9 @@ public class ImageCurves extends ImageSlave { } Spline spline = getSpline(mCurrentCurveIndex); - int pick = pickControlPoint(posX, posY); + int pick = mCurrentPick; if (mCurrentControlPoint == null) { + pick = pickControlPoint(posX, posY); if (pick == -1) { mCurrentControlPoint = new ControlPoint(posX, posY); pick = spline.addPoint(mCurrentControlPoint); @@ -214,6 +217,7 @@ public class ImageCurves extends ImageSlave { } else { mCurrentControlPoint = spline.getPoint(pick); } + mCurrentPick = pick; } if (spline.isPointContained(posX, pick)) { -- cgit v1.2.3