Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a987d9af authored by Stefan Wysocki's avatar Stefan Wysocki Committed by Johan Redestig
Browse files

Use parseColor instead of getHTMLColor

getHTMLColor is not aware of ARGB color format which is commonly used in
android xml files. This causes problem with coloring spans in resources.

Instead of above it should be changed to parseColor() with supported
formats: #RRGGBB #AARRGGBB

Bug: https://code.google.com/p/android/issues/detail?id=58192

Change-Id: I16bdf4c5c2a3b5e216b44e5c1955cac0104b3e12
parent 59701b9b
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -311,13 +311,13 @@ final class StringBlock {
     * the color black is returned instead.
     *
     * @param color The color as a string. Can be a resource reference,
     *              HTML hexadecimal, octal or a name
     *              hexadecimal, octal or a name
     * @param foreground True if the color will be used as the foreground color,
     *                   false otherwise
     *
     * @return A CharacterStyle
     *
     * @see Color#getHtmlColor(String)
     * @see Color#parseColor(String)
     */
    private static CharacterStyle getColor(String color, boolean foreground) {
        int c = 0xff000000;
@@ -336,7 +336,11 @@ final class StringBlock {
                    }
                }
            } else {
                c = Color.getHtmlColor(color);
                try {
                    c = Color.parseColor(color);
                } catch (IllegalArgumentException e) {
                    c = Color.BLACK;
                }
            }
        }