diff options
author | Romain Guy <romainguy@google.com> | 2011-02-14 14:45:33 -0800 |
---|---|---|
committer | Romain Guy <romainguy@google.com> | 2011-02-14 14:45:33 -0800 |
commit | 676b17391fb6583e5df944c36b1bd4c1be835689 (patch) | |
tree | caecd54c9db5dcc735f9057e32eda87e031ff743 | |
parent | 28dcdd77edd0b072f67f5db82a47cc276339a508 (diff) | |
download | frameworks_base-676b17391fb6583e5df944c36b1bd4c1be835689.zip frameworks_base-676b17391fb6583e5df944c36b1bd4c1be835689.tar.gz frameworks_base-676b17391fb6583e5df944c36b1bd4c1be835689.tar.bz2 |
Deprecate ARGB_4444.
It looks awful.
Don't use it.
Use ARGB_8888, it's much better.
If you think you need ARGB_4444, you are wrong.
You are.
Change-Id: I4d6963cf98b6a8fb34cebcd0d24b9fd66b5a0fbf
-rw-r--r-- | core/java/android/view/View.java | 74 | ||||
-rw-r--r-- | graphics/java/android/graphics/Bitmap.java | 68 |
2 files changed, 70 insertions, 72 deletions
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index 03a6aa5..378eb21 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -1421,55 +1421,6 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility } /** - * Used by views that contain lists of items. This state indicates that - * the view is showing the last item. - * @hide - */ - protected static final int[] LAST_STATE_SET = {R.attr.state_last}; - /** - * Used by views that contain lists of items. This state indicates that - * the view is showing the first item. - * @hide - */ - protected static final int[] FIRST_STATE_SET = {R.attr.state_first}; - /** - * Used by views that contain lists of items. This state indicates that - * the view is showing the middle item. - * @hide - */ - protected static final int[] MIDDLE_STATE_SET = {R.attr.state_middle}; - /** - * Used by views that contain lists of items. This state indicates that - * the view is showing only one item. - * @hide - */ - protected static final int[] SINGLE_STATE_SET = {R.attr.state_single}; - /** - * Used by views that contain lists of items. This state indicates that - * the view is pressed and showing the last item. - * @hide - */ - protected static final int[] PRESSED_LAST_STATE_SET = {R.attr.state_last, R.attr.state_pressed}; - /** - * Used by views that contain lists of items. This state indicates that - * the view is pressed and showing the first item. - * @hide - */ - protected static final int[] PRESSED_FIRST_STATE_SET = {R.attr.state_first, R.attr.state_pressed}; - /** - * Used by views that contain lists of items. This state indicates that - * the view is pressed and showing the middle item. - * @hide - */ - protected static final int[] PRESSED_MIDDLE_STATE_SET = {R.attr.state_middle, R.attr.state_pressed}; - /** - * Used by views that contain lists of items. This state indicates that - * the view is pressed and showing only one item. - * @hide - */ - protected static final int[] PRESSED_SINGLE_STATE_SET = {R.attr.state_single, R.attr.state_pressed}; - - /** * Temporary Rect currently for use in setBackground(). This will probably * be extended in the future to hold our own class with more than just * a Rect. :) @@ -1497,14 +1448,14 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility * {@hide} */ @ViewDebug.ExportedProperty(category = "measurement") - /*package*/ int mMeasuredWidth; + int mMeasuredWidth; /** * Height as measured during measure pass. * {@hide} */ @ViewDebug.ExportedProperty(category = "measurement") - /*package*/ int mMeasuredHeight; + int mMeasuredHeight; /** * Flag to indicate that this view was marked INVALIDATED, or had its display list @@ -3749,16 +3700,6 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility } /** - * Determine if this view has the FITS_SYSTEM_WINDOWS flag set. - * @return True if window has FITS_SYSTEM_WINDOWS set - * - * @hide - */ - public boolean isFitsSystemWindowsFlagSet() { - return (mViewFlags & FITS_SYSTEM_WINDOWS) == FITS_SYSTEM_WINDOWS; - } - - /** * Returns the visibility status for this view. * * @return One of {@link #VISIBLE}, {@link #INVISIBLE}, or {@link #GONE}. @@ -8436,6 +8377,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility * * @hide */ + @SuppressWarnings({"UnusedDeclaration"}) public void outputDirtyFlags(String indent, boolean clear, int clearMask) { Log.d("View", indent + this + " DIRTY(" + (mPrivateFlags & View.DIRTY_MASK) + ") DRAWN(" + (mPrivateFlags & DRAWN) + ")" + " CACHE_VALID(" + @@ -8473,10 +8415,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility * @hide */ public boolean canHaveDisplayList() { - if (mAttachInfo == null || mAttachInfo.mHardwareRenderer == null) { - return false; - } - return true; + return !(mAttachInfo == null || mAttachInfo.mHardwareRenderer == null); } /** @@ -8719,12 +8658,14 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility if (bitmap == null || bitmap.getWidth() != width || bitmap.getHeight() != height) { Bitmap.Config quality; if (!opaque) { + // Never pick ARGB_4444 because it looks awful + // Keep the DRAWING_CACHE_QUALITY_LOW flag just in case switch (mViewFlags & DRAWING_CACHE_QUALITY_MASK) { case DRAWING_CACHE_QUALITY_AUTO: quality = Bitmap.Config.ARGB_8888; break; case DRAWING_CACHE_QUALITY_LOW: - quality = Bitmap.Config.ARGB_4444; + quality = Bitmap.Config.ARGB_8888; break; case DRAWING_CACHE_QUALITY_HIGH: quality = Bitmap.Config.ARGB_8888; @@ -11324,6 +11265,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback, Accessibility * </p> */ public boolean dispatchDragEvent(DragEvent event) { + //noinspection SimplifiableIfStatement if (mOnDragListener != null && (mViewFlags & ENABLED_MASK) == ENABLED && mOnDragListener.onDrag(this, event)) { return true; diff --git a/graphics/java/android/graphics/Bitmap.java b/graphics/java/android/graphics/Bitmap.java index bd903da..b2f4379 100644 --- a/graphics/java/android/graphics/Bitmap.java +++ b/graphics/java/android/graphics/Bitmap.java @@ -245,25 +245,80 @@ public final class Bitmap implements Parcelable { } } + /** + * Possible bitmap configurations. A bitmap configuration describes + * how pixels are stored. This affects the quality (color depth) as + * well as the ability to display transparent/translucent colors. + */ public enum Config { // these native values must match up with the enum in SkBitmap.h + + /** + * Each pixel is stored as a single translucency (alpha) channel. + * This is very useful to efficiently store masks for instance. + * No color information is stored. + * With this configuration, each pixel requires 1 byte of memory. + */ ALPHA_8 (2), + + /** + * Each pixel is stored on 2 bytes and only the RGB channels are + * encoded: red is stored with 5 bits of precision (32 possible + * values), green is stored with 6 bits of precision (64 possible + * values) and blue is stored with 5 bits of precision. + * + * This configuration can produce slight visual artifacts depending + * on the configuration of the source. For instance, without + * dithering, the result might show a greenish tint. To get better + * results dithering should be applied. + * + * This configuration may be useful when using opaque bitmaps + * that do not require high color fidelity. + */ RGB_565 (4), + + /** + * Each pixel is stored on 2 bytes. The three RGB color channels + * and the alpha channel (translucency) are stored with a 4 bits + * precision (16 possible values.) + * + * This configuration is mostly useful if the application needs + * to store translucency information but also needs to save + * memory. + * + * It is recommended to use {@link #ARGB_8888} instead of this + * configuration. + * + * @deprecated Because of the poor quality of this configuration, + * it is advised to use {@link #ARGB_8888} instead. + */ + @Deprecated ARGB_4444 (5), + + /** + * Each pixel is stored on 4 bytes. Each channel (RGB and alpha + * for translucency) is stored with 8 bits of precision (256 + * possible values.) + * + * This configuration is very flexible and offers the best + * quality. It should be used whenever possible. + */ ARGB_8888 (6); + final int nativeInt; + + @SuppressWarnings({"deprecation"}) + private static Config sConfigs[] = { + null, null, ALPHA_8, null, RGB_565, ARGB_4444, ARGB_8888 + }; + Config(int ni) { this.nativeInt = ni; } - final int nativeInt; - /* package */ static Config nativeToConfig(int ni) { + static Config nativeToConfig(int ni) { return sConfigs[ni]; } - - private static Config sConfigs[] = { - null, null, ALPHA_8, null, RGB_565, ARGB_4444, ARGB_8888 - }; } /** @@ -473,6 +528,7 @@ public final class Bitmap implements Parcelable { case ALPHA_8: newConfig = Config.ALPHA_8; break; + //noinspection deprecation case ARGB_4444: case ARGB_8888: default: |