summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornicolasroard <nicolasroard@google.com>2013-01-29 21:23:46 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2013-01-29 21:23:46 +0000
commit7bbdf56b74ec0ba029b1fc5f0d96cf8e8c1e7618 (patch)
tree74cc6a19046369b84c533e574a393a211272ebe1
parentb17796f30a1b9cdde29f5b0e338c482ba447a4b1 (diff)
parent2efd71f989845ba9fc686b4772cdc4c9bb5c9850 (diff)
downloadandroid_packages_apps_Gallery2-7bbdf56b74ec0ba029b1fc5f0d96cf8e8c1e7618.tar.gz
android_packages_apps_Gallery2-7bbdf56b74ec0ba029b1fc5f0d96cf8e8c1e7618.tar.bz2
android_packages_apps_Gallery2-7bbdf56b74ec0ba029b1fc5f0d96cf8e8c1e7618.zip
Merge "Fix scaling + quality parameters" into gb-ub-photos-bryce
-rw-r--r--src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java16
-rw-r--r--src/com/android/gallery3d/filtershow/cache/ImageLoader.java5
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();
}