diff --git a/graphics/java/android/graphics/Paint.java b/graphics/java/android/graphics/Paint.java index e22257071dd2f..51bf6d539ce85 100644 --- a/graphics/java/android/graphics/Paint.java +++ b/graphics/java/android/graphics/Paint.java @@ -254,6 +254,12 @@ public class Paint { static final int HIDDEN_DEFAULT_PAINT_FLAGS = DEV_KERN_TEXT_FLAG | EMBEDDED_BITMAP_TEXT_FLAG | FILTER_BITMAP_FLAG; + /** + * These flags are always set on a reset paint or a new paint instantiated using + * {@link #Paint()}. + */ + private static final int DEFAULT_PAINT_FLAGS = ANTI_ALIAS_FLAG | DITHER_FLAG; + /** * Font hinter option that disables font hinting. * @@ -570,10 +576,13 @@ public class Paint { * accelerated drawing always acts as if {@link #FILTER_BITMAP_FLAG} is set. * On devices running {@link Build.VERSION_CODES#Q} and above, * {@code FILTER_BITMAP_FLAG} is set by this constructor, and it can be - * cleared with {@link #setFlags} or {@link #setFilterBitmap}.

+ * cleared with {@link #setFlags} or {@link #setFilterBitmap}. + * On devices running {@link Build.VERSION_CODES#S} and above, {@code ANTI_ALIAS_FLAG} and + * {@code DITHER_FLAG} are set by this constructor, and they can be cleared with + * {@link #setFlags} or {@link #setAntiAlias} and {@link #setDither}, respectively.

*/ public Paint() { - this(0); + this(DEFAULT_PAINT_FLAGS); } /** @@ -618,7 +627,7 @@ public class Paint { /** Restores the paint to its default settings. */ public void reset() { nReset(mNativePaint); - setFlags(HIDDEN_DEFAULT_PAINT_FLAGS); + setFlags(HIDDEN_DEFAULT_PAINT_FLAGS | DEFAULT_PAINT_FLAGS); // TODO: Turning off hinting has undesirable side effects, we need to // revisit hinting once we add support for subpixel positioning