diff options
author | nicolasroard <nicolasroard@google.com> | 2013-01-29 13:16:21 -0800 |
---|---|---|
committer | nicolasroard <nicolasroard@google.com> | 2013-01-29 13:16:21 -0800 |
commit | 4fbd974264a91357de98115d7746ab370d7f3d94 (patch) | |
tree | f6ee1878ae604bf0438ad4f7d6d0647ddec746e5 /src/com/android/gallery3d/filtershow | |
parent | 5a1fcd84b353eda4c283c04cb656a51e6069bec7 (diff) | |
download | android_packages_apps_Snap-4fbd974264a91357de98115d7746ab370d7f3d94.tar.gz android_packages_apps_Snap-4fbd974264a91357de98115d7746ab370d7f3d94.tar.bz2 android_packages_apps_Snap-4fbd974264a91357de98115d7746ab370d7f3d94.zip |
Fix scaling + quality parameters
Change-Id: I92e7759282e0f3cc7be8ff95a19a4acb890d214d
Diffstat (limited to 'src/com/android/gallery3d/filtershow')
-rw-r--r-- | src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java | 16 | ||||
-rw-r--r-- | src/com/android/gallery3d/filtershow/cache/ImageLoader.java | 5 |
2 files changed, 20 insertions, 1 deletions
diff --git a/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java b/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java index a1dbe8e52..eda10fc58 100644 --- a/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java +++ b/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java @@ -37,6 +37,7 @@ public class FilteringPipeline implements Handler.Callback { private ImagePreset mPreviousGeometryPreset = null; private ImagePreset mPreviousFiltersPreset = null; private GeometryMetadata mPreviousGeometry = null; + private float mPreviewScaleFactor = 1.0f; private Bitmap mOriginalBitmap = null; private Bitmap mResizedOriginalBitmap = null; @@ -218,6 +219,13 @@ public class FilteringPipeline implements Handler.Callback { Bitmap bitmap = buffer.getProducer(); long time2 = System.currentTimeMillis(); + preset.setScaleFactor(mPreviewScaleFactor); + if (mPreviewScaleFactor < 1.0f) { + preset.setIsHighQuality(false); + } else { + preset.setIsHighQuality(true); + } + if (type != COMPUTE_FILTERS_PRESET) { if (bitmap == null || (bitmap.getWidth() != mResizedOriginalBitmap.getWidth()) || (bitmap.getHeight() != mResizedOriginalBitmap.getHeight())) { @@ -295,4 +303,12 @@ public class FilteringPipeline implements Handler.Callback { } return true; } + + public void setPreviewScaleFactor(float previewScaleFactor) { + mPreviewScaleFactor = previewScaleFactor; + } + + public float getPreviewScaleFactor() { + return mPreviewScaleFactor; + } } diff --git a/src/com/android/gallery3d/filtershow/cache/ImageLoader.java b/src/com/android/gallery3d/filtershow/cache/ImageLoader.java index 85d0977e7..ade775d09 100644 --- a/src/com/android/gallery3d/filtershow/cache/ImageLoader.java +++ b/src/com/android/gallery3d/filtershow/cache/ImageLoader.java @@ -212,7 +212,10 @@ public class ImageLoader { mOriginalBitmapLarge = rotateToPortrait(mOriginalBitmapLarge, mOrientation); } mZoomOrientation = mOrientation; - FilteringPipeline.getPipeline().setOriginal(mOriginalBitmapLarge); + FilteringPipeline pipeline = FilteringPipeline.getPipeline(); + pipeline.setOriginal(mOriginalBitmapLarge); + float previewScale = (float) mOriginalBitmapLarge.getWidth() / (float) getOriginalBounds().width(); + pipeline.setPreviewScaleFactor(previewScale); warnListeners(); } |