summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJohn Hoford <hoford@google.com>2013-02-12 11:55:50 -0800
committerJohn Hoford <hoford@google.com>2013-02-12 12:11:35 -0800
commitc04f50dd1ed5523c21e587bc899e7d3610e68b25 (patch)
treec968e18872ef3ef9a155f440eef9e3389667f132 /src
parent3d3a66695f3d022a71e8b9c77326eb68cd15b31d (diff)
downloadandroid_packages_apps_Snap-c04f50dd1ed5523c21e587bc899e7d3610e68b25.tar.gz
android_packages_apps_Snap-c04f50dd1ed5523c21e587bc899e7d3610e68b25.tar.bz2
android_packages_apps_Snap-c04f50dd1ed5523c21e587bc899e7d3610e68b25.zip
refactor quality to be int
Change-Id: I0470abdbe75cf48c5228e80b9dc060ae6f3d8bbd
Diffstat (limited to 'src')
-rw-r--r--src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java4
-rw-r--r--src/com/android/gallery3d/filtershow/cache/ImageLoader.java4
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorDraw.java4
-rw-r--r--src/com/android/gallery3d/filtershow/filters/FilterDrawRepresentation.java26
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilter.java6
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterBorder.java4
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterBwFilter.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterContrast.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterCurves.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterDownsample.java4
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterDraw.java32
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterEdge.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterExposure.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterFx.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterGeometry.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterHue.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterKMeans.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterNegative.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterParametricBorder.java4
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterRS.java10
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterRedEye.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterSaturated.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterShadows.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterStraighten.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterTinyPlanet.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterVibrance.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterVignette.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/ImageFilterWBalance.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/SimpleImageFilter.java4
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/GeometryMetadata.java4
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/ImageDraw.java5
-rw-r--r--src/com/android/gallery3d/filtershow/presets/ImagePreset.java19
33 files changed, 95 insertions, 73 deletions
diff --git a/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java b/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java
index 4f5cfc4f9..b51d8b03d 100644
--- a/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java
+++ b/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java
@@ -190,9 +190,9 @@ public class FilteringPipeline implements Handler.Callback {
private void setPresetParameters(ImagePreset preset) {
preset.setScaleFactor(mPreviewScaleFactor);
if (mPreviewScaleFactor < 1.0f) {
- preset.setIsHighQuality(false);
+ preset.setQuality(ImagePreset.QUALITY_PREVIEW);
} else {
- preset.setIsHighQuality(true);
+ preset.setQuality(ImagePreset.QUALITY_PREVIEW);
}
}
diff --git a/src/com/android/gallery3d/filtershow/cache/ImageLoader.java b/src/com/android/gallery3d/filtershow/cache/ImageLoader.java
index b47d13b9e..908100a32 100644
--- a/src/com/android/gallery3d/filtershow/cache/ImageLoader.java
+++ b/src/com/android/gallery3d/filtershow/cache/ImageLoader.java
@@ -392,7 +392,7 @@ public class ImageLoader {
public void saveImage(ImagePreset preset, final FilterShowActivity filterShowActivity,
File destination) {
- preset.setIsHighQuality(true);
+ preset.setQuality(ImagePreset.QUALITY_FINAL);
preset.setScaleFactor(1.0f);
new SaveCopyTask(mContext, mUri, destination, new SaveCopyTask.Callback() {
@@ -432,7 +432,7 @@ public class ImageLoader {
public void returnFilteredResult(ImagePreset preset,
final FilterShowActivity filterShowActivity) {
- preset.setIsHighQuality(true);
+ preset.setQuality(ImagePreset.QUALITY_FINAL);
preset.setScaleFactor(1.0f);
BitmapTask.Callbacks<ImagePreset> cb = new BitmapTask.Callbacks<ImagePreset>() {
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorDraw.java b/src/com/android/gallery3d/filtershow/editors/EditorDraw.java
index 128af8ec7..907d1083e 100644
--- a/src/com/android/gallery3d/filtershow/editors/EditorDraw.java
+++ b/src/com/android/gallery3d/filtershow/editors/EditorDraw.java
@@ -120,6 +120,10 @@ public class EditorDraw extends Editor {
} else if (item.getItemId() == R.id.draw_menu_style_line) {
ImageDraw idraw = (ImageDraw) mImageShow;
idraw.setStyle(ImageFilterDraw.SIMPLE_STYLE);
+ } else if (item.getItemId() == R.id.draw_menu_clear) {
+ FilterDrawRepresentation drawRep = (FilterDrawRepresentation) getLocalRepresentation();
+ drawRep.clear();
+ commitLocalRepresentation();
}
mView.invalidate();
return true;
diff --git a/src/com/android/gallery3d/filtershow/filters/FilterDrawRepresentation.java b/src/com/android/gallery3d/filtershow/filters/FilterDrawRepresentation.java
index b8fa0a3d4..b2e1ed39b 100644
--- a/src/com/android/gallery3d/filtershow/filters/FilterDrawRepresentation.java
+++ b/src/com/android/gallery3d/filtershow/filters/FilterDrawRepresentation.java
@@ -17,6 +17,8 @@
package com.android.gallery3d.filtershow.filters;
import android.graphics.Path;
+import android.util.Log;
+
import com.android.gallery3d.R;
import com.android.gallery3d.filtershow.editors.EditorDraw;
@@ -30,7 +32,7 @@ public class FilterDrawRepresentation extends FilterRepresentation {
public Path mPath;
public float mRadius;
public int mColor;
-
+ public int noPoints = 0;
@Override
public String toString() {
return "stroke(" + mType + ", path(" + (mPath) + "), " + mRadius + " , "
@@ -57,7 +59,8 @@ public class FilterDrawRepresentation extends FilterRepresentation {
@Override
public String toString() {
return getName() + " : strokes=" + mDrawing.size()
- + ((mCurrent == null) ? " no current " : ("current=" + mCurrent.mType));
+ + ((mCurrent == null) ? " no current "
+ : ("draw=" + mCurrent.mType + " " + mCurrent.noPoints));
}
public Vector<StrokeData> getDrawing() {
@@ -95,6 +98,8 @@ public class FilterDrawRepresentation extends FilterRepresentation {
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
+ } else {
+ Log.v(LOGTAG, "cannot use parameters from " + a);
}
}
@@ -104,8 +109,18 @@ public class FilterDrawRepresentation extends FilterRepresentation {
return false;
}
if (representation instanceof FilterDrawRepresentation) {
- // FIXME!
- return true;
+ FilterDrawRepresentation fdRep = (FilterDrawRepresentation) representation;
+ if (fdRep.mDrawing.size() != mDrawing.size())
+ return false;
+ if (fdRep.mCurrent == null && mCurrent.mPath == null) {
+ return true;
+ }
+ if (fdRep.mCurrent != null && mCurrent.mPath != null) {
+ if (fdRep.mCurrent.noPoints == mCurrent.noPoints) {
+ return true;
+ }
+ return false;
+ }
}
return false;
}
@@ -117,14 +132,17 @@ public class FilterDrawRepresentation extends FilterRepresentation {
mCurrent.mType = type;
mCurrent.mPath = new Path();
mCurrent.mPath.moveTo(x, y);
+ mCurrent.noPoints = 0;
}
public void addPoint(float x, float y) {
+ mCurrent.noPoints++;
mCurrent.mPath.lineTo(x, y);
}
public void endSection(float x, float y) {
mCurrent.mPath.lineTo(x, y);
+ mCurrent.noPoints++;
mDrawing.add(mCurrent);
mCurrent = null;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilter.java b/src/com/android/gallery3d/filtershow/filters/ImageFilter.java
index d7a76d614..00499cb74 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilter.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilter.java
@@ -37,7 +37,7 @@ public class ImageFilter implements Cloneable {
return mName;
}
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
// do nothing here, subclasses will implement filtering here
return bitmap;
}
@@ -46,8 +46,8 @@ public class ImageFilter implements Cloneable {
* Called on small bitmaps to create button icons for each filter.
* Override this to provide filter-specific button icons.
*/
- public Bitmap iconApply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
- return apply(bitmap, scaleFactor, highQuality);
+ public Bitmap iconApply(Bitmap bitmap, float scaleFactor, int quality) {
+ return apply(bitmap, scaleFactor, quality);
}
public ImagePreset getImagePreset() {
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterBorder.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterBorder.java
index 416af9417..70e7f2220 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterBorder.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterBorder.java
@@ -63,7 +63,7 @@ public class ImageFilterBorder extends ImageFilter {
}
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null || getParameters().getDrawableResource() == 0) {
return bitmap;
}
@@ -73,7 +73,7 @@ public class ImageFilterBorder extends ImageFilter {
}
@Override
- public Bitmap iconApply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap iconApply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null || getParameters().getDrawableResource() == 0) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterBwFilter.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterBwFilter.java
index 3580dd693..c92ac012d 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterBwFilter.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterBwFilter.java
@@ -42,7 +42,7 @@ public class ImageFilterBwFilter extends SimpleImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, int r, int g, int b);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterContrast.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterContrast.java
index e2664269b..36da68b7b 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterContrast.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterContrast.java
@@ -38,7 +38,7 @@ public class ImageFilterContrast extends SimpleImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, float strength);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterCurves.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterCurves.java
index 4b65a0016..aa4cf22e6 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterCurves.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterCurves.java
@@ -55,7 +55,7 @@ public class ImageFilterCurves extends ImageFilter {
}
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (!mParameters.getSpline(Spline.RGB).isOriginal()) {
int[] rgbGradient = new int[256];
populateArray(rgbGradient, Spline.RGB);
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterDownsample.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterDownsample.java
index a53d2f3b3..906467344 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterDownsample.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterDownsample.java
@@ -47,7 +47,7 @@ public class ImageFilterDownsample extends SimpleImageFilter {
}
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
@@ -79,7 +79,7 @@ public class ImageFilterDownsample extends SimpleImageFilter {
}
@Override
- public Bitmap iconApply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap iconApply(Bitmap bitmap, float scaleFactor, int quality) {
int w = bitmap.getWidth();
int h = bitmap.getHeight();
Bitmap ret = Bitmap.createScaledBitmap(bitmap, w / ICON_DOWNSAMPLE_FRACTION, h
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterDraw.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterDraw.java
index d2b5507a1..9d22f7a6f 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterDraw.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterDraw.java
@@ -32,6 +32,7 @@ import android.util.Log;
import com.android.gallery3d.R;
import com.android.gallery3d.filtershow.filters.FilterDrawRepresentation.StrokeData;
import com.android.gallery3d.filtershow.imageshow.MasterImage;
+import com.android.gallery3d.filtershow.presets.ImagePreset;
import java.util.Vector;
@@ -85,7 +86,7 @@ public class ImageFilterDraw extends ImageFilter {
public static interface DrawStyle {
public void setType(byte type);
public void paint(FilterDrawRepresentation.StrokeData sd, Canvas canvas, Matrix toScrMatrix,
- boolean highQuality);
+ int quality);
}
class SimpleDraw implements DrawStyle {
@@ -98,7 +99,7 @@ public class ImageFilterDraw extends ImageFilter {
@Override
public void paint(FilterDrawRepresentation.StrokeData sd, Canvas canvas, Matrix toScrMatrix,
- boolean highQuality) {
+ int quality) {
if (sd == null) {
return;
}
@@ -139,7 +140,7 @@ public class ImageFilterDraw extends ImageFilter {
@Override
public void paint(FilterDrawRepresentation.StrokeData sd, Canvas canvas, Matrix toScrMatrix,
- boolean highQuality) {
+ int quality) {
if (sd == null || sd.mPath == null) {
return;
}
@@ -198,13 +199,13 @@ public class ImageFilterDraw extends ImageFilter {
}
void paint(FilterDrawRepresentation.StrokeData sd, Canvas canvas, Matrix toScrMatrix,
- boolean highQuality) {
- mDrawingsTypes[sd.mType].paint(sd, canvas, toScrMatrix, highQuality);
+ int quality) {
+ mDrawingsTypes[sd.mType].paint(sd, canvas, toScrMatrix, quality);
}
- public void drawData(Canvas canvas, Matrix originalRotateToScreen, boolean highQuality) {
+ public void drawData(Canvas canvas, Matrix originalRotateToScreen, int quality) {
Paint paint = new Paint();
- if (highQuality) {
+ if (quality == ImagePreset.QUALITY_FINAL) {
paint.setAntiAlias(true);
}
paint.setStyle(Style.STROKE);
@@ -214,9 +215,9 @@ public class ImageFilterDraw extends ImageFilter {
if (mParameters.getDrawing().isEmpty() && mParameters.getCurrentDrawing() == null) {
return;
}
- if (highQuality) {
+ if (quality == ImagePreset.QUALITY_FINAL) {
for (FilterDrawRepresentation.StrokeData strokeData : mParameters.getDrawing()) {
- paint(strokeData, canvas, originalRotateToScreen, highQuality);
+ paint(strokeData, canvas, originalRotateToScreen, quality);
}
return;
}
@@ -237,7 +238,7 @@ public class ImageFilterDraw extends ImageFilter {
StrokeData stroke = mParameters.getCurrentDrawing();
if (stroke != null) {
- paint(stroke, canvas, originalRotateToScreen, highQuality);
+ paint(stroke, canvas, originalRotateToScreen, quality);
}
}
@@ -247,27 +248,28 @@ public class ImageFilterDraw extends ImageFilter {
int n = v.size();
for (int i = mCachedStrokes; i < n; i++) {
- paint(v.get(i), drawCache, originalRotateToScreen, false);
+ paint(v.get(i), drawCache, originalRotateToScreen, ImagePreset.QUALITY_PREVIEW);
}
mCachedStrokes = n;
}
public void draw(Canvas canvas, Matrix originalRotateToScreen) {
for (FilterDrawRepresentation.StrokeData strokeData : mParameters.getDrawing()) {
- paint(strokeData, canvas, originalRotateToScreen, false);
+ paint(strokeData, canvas, originalRotateToScreen, ImagePreset.QUALITY_PREVIEW);
}
- mDrawingsTypes[mCurrentStyle].paint(null, canvas, originalRotateToScreen, false);
+ mDrawingsTypes[mCurrentStyle].paint(
+ null, canvas, originalRotateToScreen, ImagePreset.QUALITY_PREVIEW);
}
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
int w = bitmap.getWidth();
int h = bitmap.getHeight();
short[] rect = new short[4];
Matrix m = new Matrix();
m.setScale(scaleFactor, scaleFactor);
- drawData(new Canvas(bitmap), m, highQuality);
+ drawData(new Canvas(bitmap), m, quality);
return bitmap;
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterEdge.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterEdge.java
index 96839e4ab..55c709573 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterEdge.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterEdge.java
@@ -38,7 +38,7 @@ public class ImageFilterEdge extends SimpleImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, float p);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterExposure.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterExposure.java
index e36f096ad..8bb35f853 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterExposure.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterExposure.java
@@ -38,7 +38,7 @@ public class ImageFilterExposure extends SimpleImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, float bright);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterFx.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterFx.java
index 0a3c8abd0..820ec3e51 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterFx.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterFx.java
@@ -40,7 +40,7 @@ public class ImageFilterFx extends ImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h,Bitmap fxBitmap, int fxw, int fxh);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null || getParameters().getFxBitmap() ==null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterGeometry.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterGeometry.java
index a778bee21..1380c528d 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterGeometry.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterGeometry.java
@@ -67,7 +67,7 @@ public class ImageFilterGeometry extends ImageFilter {
Bitmap dst, int dstWidth, int dstHeight, float straightenAngle);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
// TODO: implement bilinear or bicubic here... for now, just use
// canvas to do a simple implementation...
// TODO: and be more memory efficient! (do it in native?)
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterHue.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterHue.java
index ed28e57b7..54bd068fc 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterHue.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterHue.java
@@ -44,7 +44,7 @@ public class ImageFilterHue extends SimpleImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, float []matrix);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterKMeans.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterKMeans.java
index f28839744..f48bd047a 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterKMeans.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterKMeans.java
@@ -53,7 +53,7 @@ public class ImageFilterKMeans extends SimpleImageFilter {
int swidth, int sheight, int p, int seed);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterNegative.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterNegative.java
index 14307c37d..c0208765b 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterNegative.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterNegative.java
@@ -23,7 +23,7 @@ public class ImageFilterNegative extends ImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
int w = bitmap.getWidth();
int h = bitmap.getHeight();
nativeApplyFilter(bitmap, w, h);
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterParametricBorder.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterParametricBorder.java
index 36c86d847..316a286e8 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterParametricBorder.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterParametricBorder.java
@@ -63,14 +63,14 @@ public class ImageFilterParametricBorder extends ImageFilter {
}
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
Canvas canvas = new Canvas(bitmap);
applyHelper(canvas, bitmap.getWidth(), bitmap.getHeight());
return bitmap;
}
@Override
- public Bitmap iconApply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap iconApply(Bitmap bitmap, float scaleFactor, int quality) {
Canvas canvas = new Canvas(bitmap);
applyHelper(canvas, bitmap.getWidth() * 4, bitmap.getHeight() * 4);
return bitmap;
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterRS.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterRS.java
index f5c1e7ff3..c741a4887 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterRS.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterRS.java
@@ -37,7 +37,7 @@ public class ImageFilterRS extends ImageFilter {
mOldBitmap = null;
}
- public void prepare(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public void prepare(Bitmap bitmap, float scaleFactor, int quality) {
if (sOldBitmap == null
|| (bitmap.getWidth() != sOldBitmap.getWidth())
|| (bitmap.getHeight() != sOldBitmap.getHeight())) {
@@ -56,13 +56,13 @@ public class ImageFilterRS extends ImageFilter {
}
mInPixelsAllocation.copyFrom(bitmap);
if (mOldBitmap != sOldBitmap) {
- createFilter(mResources, scaleFactor, highQuality);
+ createFilter(mResources, scaleFactor, quality);
mOldBitmap = sOldBitmap;
}
}
public void createFilter(android.content.res.Resources res,
- float scaleFactor, boolean highQuality) {
+ float scaleFactor, int quality) {
// Stub
}
@@ -75,12 +75,12 @@ public class ImageFilterRS extends ImageFilter {
}
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (bitmap == null) {
return bitmap;
}
try {
- prepare(bitmap, scaleFactor, highQuality);
+ prepare(bitmap, scaleFactor, quality);
runFilter();
update(bitmap);
} catch (android.renderscript.RSIllegalArgumentException e) {
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterRedEye.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterRedEye.java
index 177def7b7..a65a9631b 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterRedEye.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterRedEye.java
@@ -63,7 +63,7 @@ public class ImageFilterRedEye extends ImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, short[] matrix);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
int w = bitmap.getWidth();
int h = bitmap.getHeight();
short[] rect = new short[4];
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterSaturated.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterSaturated.java
index 747a03685..f6ef78138 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterSaturated.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterSaturated.java
@@ -38,7 +38,7 @@ public class ImageFilterSaturated extends SimpleImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, float saturation);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterShadows.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterShadows.java
index a2560b99e..b50b28e52 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterShadows.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterShadows.java
@@ -39,7 +39,7 @@ public class ImageFilterShadows extends SimpleImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, float factor);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java
index 92f9b1a6d..9c99d57d0 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterSharpen.java
@@ -48,7 +48,7 @@ public class ImageFilterSharpen extends ImageFilterRS {
@Override
public void createFilter(android.content.res.Resources res, float scaleFactor,
- boolean highQuality) {
+ int quality) {
int w = mInPixelsAllocation.getType().getX();
int h = mInPixelsAllocation.getType().getY();
mScaleFactor = scaleFactor;
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterStraighten.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterStraighten.java
index 3feec7bcc..92bde992d 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterStraighten.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterStraighten.java
@@ -53,7 +53,7 @@ public class ImageFilterStraighten extends ImageFilter {
}
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
// TODO: implement bilinear or bicubic here... for now, just use
// canvas to do a simple implementation...
// TODO: and be more memory efficient! (do it in native?)
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterTinyPlanet.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterTinyPlanet.java
index d8ec3900e..702cc664c 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterTinyPlanet.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterTinyPlanet.java
@@ -72,7 +72,7 @@ public class ImageFilterTinyPlanet extends SimpleImageFilter {
float angle);
@Override
- public Bitmap apply(Bitmap bitmapIn, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmapIn, float scaleFactor, int quality) {
int w = bitmapIn.getWidth();
int h = bitmapIn.getHeight();
int outputSize = (int) (w / 2f);
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterVibrance.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterVibrance.java
index 385921168..ac20205f0 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterVibrance.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterVibrance.java
@@ -38,7 +38,7 @@ public class ImageFilterVibrance extends SimpleImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, float bright);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterVignette.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterVignette.java
index 3aad6bd15..ac0fdee13 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterVignette.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterVignette.java
@@ -42,7 +42,7 @@ public class ImageFilterVignette extends SimpleImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, float strength);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
if (getParameters() == null) {
return bitmap;
}
diff --git a/src/com/android/gallery3d/filtershow/filters/ImageFilterWBalance.java b/src/com/android/gallery3d/filtershow/filters/ImageFilterWBalance.java
index 28223b28d..e0bcfba56 100644
--- a/src/com/android/gallery3d/filtershow/filters/ImageFilterWBalance.java
+++ b/src/com/android/gallery3d/filtershow/filters/ImageFilterWBalance.java
@@ -40,7 +40,7 @@ public class ImageFilterWBalance extends ImageFilter {
native protected void nativeApplyFilter(Bitmap bitmap, int w, int h, int locX, int locY);
@Override
- public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
int w = bitmap.getWidth();
int h = bitmap.getHeight();
nativeApplyFilter(bitmap, w, h, -1, -1);
diff --git a/src/com/android/gallery3d/filtershow/filters/SimpleImageFilter.java b/src/com/android/gallery3d/filtershow/filters/SimpleImageFilter.java
index d494913cf..922a16a0f 100644
--- a/src/com/android/gallery3d/filtershow/filters/SimpleImageFilter.java
+++ b/src/com/android/gallery3d/filtershow/filters/SimpleImageFilter.java
@@ -38,9 +38,9 @@ public class SimpleImageFilter extends ImageFilter {
}
@Override
- public Bitmap iconApply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
+ public Bitmap iconApply(Bitmap bitmap, float scaleFactor, int quality) {
FilterRepresentation representation = getDefaultRepresentation();
this.useRepresentation(representation);
- return apply(bitmap, scaleFactor, highQuality);
+ return apply(bitmap, scaleFactor, quality);
}
}
diff --git a/src/com/android/gallery3d/filtershow/imageshow/GeometryMetadata.java b/src/com/android/gallery3d/filtershow/imageshow/GeometryMetadata.java
index b53284061..a3645d6f5 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/GeometryMetadata.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/GeometryMetadata.java
@@ -86,12 +86,12 @@ public class GeometryMetadata {
return false;
}
- public Bitmap apply(Bitmap original, float scaleFactor, boolean highQuality) {
+ public Bitmap apply(Bitmap original, float scaleFactor, int quality) {
if (!hasModifications()) {
return original;
}
mImageFilter.setGeometryMetadata(this);
- Bitmap m = mImageFilter.apply(original, scaleFactor, highQuality);
+ Bitmap m = mImageFilter.apply(original, scaleFactor, quality);
return m;
}
diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageDraw.java b/src/com/android/gallery3d/filtershow/imageshow/ImageDraw.java
index 2dc0221e4..0cd229968 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/ImageDraw.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/ImageDraw.java
@@ -5,8 +5,6 @@ import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Matrix;
-import android.graphics.Rect;
-import android.graphics.RectF;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.util.Log;
@@ -91,7 +89,6 @@ public class ImageDraw extends ImageShow {
ImageFilterDraw filter = (ImageFilterDraw) getCurrentFilter();
if (event.getAction() == MotionEvent.ACTION_DOWN) {
-
mTmpPoint[0] = event.getX();
mTmpPoint[1] = event.getY();
mToOrig.mapPoints(mTmpPoint);
@@ -116,8 +113,6 @@ public class ImageDraw extends ImageShow {
mTmpPoint[1] = event.getY();
mToOrig.mapPoints(mTmpPoint);
mFRep.endSection(mTmpPoint[0], mTmpPoint[1]);
- this.resetImageCaches(this);
-
}
mEditorDraw.commitLocalRepresentation();
invalidate();
diff --git a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java
index c7d14e80b..adea9deb3 100644
--- a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java
+++ b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java
@@ -35,7 +35,10 @@ public class ImagePreset {
private FilterRepresentation mBorder = null;
private float mScaleFactor = 1.0f;
- private boolean mIsHighQuality = false;
+ public static final int QUALITY_ICON = 0;
+ public static final int QUALITY_PREVIEW = 1;
+ public static final int QUALITY_FINAL = 2;
+ private int mQuality = QUALITY_PREVIEW;
private ImageLoader mImageLoader = null;
private Vector<FilterRepresentation> mFilters = new Vector<FilterRepresentation>();
@@ -380,14 +383,14 @@ public class ImagePreset {
public Bitmap applyGeometry(Bitmap bitmap) {
// Apply any transform -- 90 rotate, flip, straighten, crop
// Returns a new bitmap.
- return mGeoData.apply(bitmap, mScaleFactor, mIsHighQuality);
+ return mGeoData.apply(bitmap, mScaleFactor, mQuality);
}
public Bitmap applyBorder(Bitmap bitmap) {
if (mBorder != null && mDoApplyGeometry) {
ImageFilter filter = FiltersManager.getManager().getFilterForRepresentation(mBorder);
filter.useRepresentation(mBorder);
- bitmap = filter.apply(bitmap, mScaleFactor, mIsHighQuality);
+ bitmap = filter.apply(bitmap, mScaleFactor, mQuality);
}
return bitmap;
}
@@ -408,7 +411,7 @@ public class ImagePreset {
}
ImageFilter filter = FiltersManager.getManager().getFilterForRepresentation(representation);
filter.useRepresentation(representation);
- bitmap = filter.apply(bitmap, mScaleFactor, mIsHighQuality);
+ bitmap = filter.apply(bitmap, mScaleFactor, mQuality);
}
}
@@ -429,12 +432,12 @@ public class ImagePreset {
return mScaleFactor;
}
- public boolean isHighQuality() {
- return mIsHighQuality;
+ public int getQuality() {
+ return mQuality;
}
- public void setIsHighQuality(boolean value) {
- mIsHighQuality = value;
+ public void setQuality(int value) {
+ mQuality = value;
}
public void setScaleFactor(float value) {