diff options
| author | 2018-02-23 12:27:27 -0500 | |
|---|---|---|
| committer | 2018-02-23 12:36:29 -0500 | |
| commit | a38b2135a4bf4368734567a73d2e56f1c318fee9 (patch) | |
| tree | 6f4ff371bfe270be8789e7614ba9b0986f02cee0 | |
| parent | 1474b78888012a5b89e2a486ff0148cacd94300c (diff) | |
setPreferRamOverQuality -> setConserveMemory
Bug: 73788928
Test: Ic4198306aae7f11a935aeeb970c8e05fbe440e7f
Change-Id: Ia2d2a559c652647ab4ed86b99833d33224f453b9
| -rw-r--r-- | api/current.txt | 2 | ||||
| -rw-r--r-- | graphics/java/android/graphics/ImageDecoder.java | 36 |
2 files changed, 20 insertions, 18 deletions
diff --git a/api/current.txt b/api/current.txt index 3689e9f18b5d..6068492e5fac 100644 --- a/api/current.txt +++ b/api/current.txt @@ -13606,11 +13606,11 @@ package android.graphics { method public android.util.Size getSampledSize(int); method public void setAllocator(int); method public void setAsAlphaMask(boolean); + method public void setConserveMemory(boolean); method public void setCrop(android.graphics.Rect); method public void setMutable(boolean); method public void setOnPartialImageListener(android.graphics.ImageDecoder.OnPartialImageListener); method public void setPostProcessor(android.graphics.PostProcessor); - method public void setPreferRamOverQuality(boolean); method public void setRequireUnpremultiplied(boolean); method public void setResize(int, int); method public void setResize(int); diff --git a/graphics/java/android/graphics/ImageDecoder.java b/graphics/java/android/graphics/ImageDecoder.java index acefead785c4..816dd52b03a9 100644 --- a/graphics/java/android/graphics/ImageDecoder.java +++ b/graphics/java/android/graphics/ImageDecoder.java @@ -28,34 +28,32 @@ import android.content.res.AssetFileDescriptor; import android.content.res.AssetManager; import android.content.res.Resources; import android.graphics.drawable.AnimatedImageDrawable; -import android.graphics.drawable.Drawable; import android.graphics.drawable.BitmapDrawable; +import android.graphics.drawable.Drawable; import android.graphics.drawable.NinePatchDrawable; import android.net.Uri; -import android.util.Size; import android.system.ErrnoException; import android.system.Os; import android.util.DisplayMetrics; +import android.util.Size; import android.util.TypedValue; -import libcore.io.IoUtils; import dalvik.system.CloseGuard; -import java.nio.ByteBuffer; +import libcore.io.IoUtils; + import java.io.File; import java.io.FileDescriptor; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; -import java.lang.ArrayIndexOutOfBoundsException; -import java.lang.AutoCloseable; -import java.lang.NullPointerException; -import java.lang.RuntimeException; import java.lang.annotation.Retention; -import static java.lang.annotation.RetentionPolicy.SOURCE; +import java.nio.ByteBuffer; import java.util.concurrent.atomic.AtomicBoolean; +import static java.lang.annotation.RetentionPolicy.SOURCE; + /** * Class for decoding images as {@link Bitmap}s or {@link Drawable}s. */ @@ -441,7 +439,7 @@ public final class ImageDecoder implements AutoCloseable { private int mAllocator = ALLOCATOR_DEFAULT; private boolean mRequireUnpremultiplied = false; private boolean mMutable = false; - private boolean mPreferRamOverQuality = false; + private boolean mConserveMemory = false; private boolean mAsAlphaMask = false; private Rect mCropRect; private Rect mOutPaddingRect; @@ -818,12 +816,16 @@ public final class ImageDecoder implements AutoCloseable { * Specify whether to potentially save RAM at the expense of quality. * * Setting this to {@code true} may result in a {@link Bitmap} with a - * denser {@link Bitmap.Config}, depending on the image. For example, for - * an opaque {@link Bitmap}, this may result in a {@link Bitmap.Config} - * with no alpha information. + * denser {@link Bitmap.Config}, depending on the image. For example, an + * opaque {@link Bitmap} with 8 bits or precision for each of its red, + * green and blue components would decode to + * {@link Bitmap.Config#ARGB_8888} by default, but setting this to + * {@code true} will result in decoding to {@link Bitmap.Config#RGB_565}. + * This necessarily lowers the quality of the output, but saves half + * the memory used. */ - public void setPreferRamOverQuality(boolean preferRamOverQuality) { - mPreferRamOverQuality = preferRamOverQuality; + public void setConserveMemory(boolean conserveMemory) { + mConserveMemory = conserveMemory; } /** @@ -904,7 +906,7 @@ public final class ImageDecoder implements AutoCloseable { return nDecodeBitmap(mNativePtr, partialImagePtr, postProcessPtr, mDesiredWidth, mDesiredHeight, mCropRect, mMutable, mAllocator, mRequireUnpremultiplied, - mPreferRamOverQuality, mAsAlphaMask); + mConserveMemory, mAsAlphaMask); } private void callHeaderDecoded(@Nullable OnHeaderDecodedListener listener, @@ -1118,7 +1120,7 @@ public final class ImageDecoder implements AutoCloseable { int width, int height, @Nullable Rect cropRect, boolean mutable, int allocator, boolean requireUnpremul, - boolean preferRamOverQuality, boolean asAlphaMask) + boolean conserveMemory, boolean asAlphaMask) throws IOException; private static native Size nGetSampledSize(long nativePtr, int sampleSize); |