Loading core/java/android/app/WallpaperColors.java +8 −0 Original line number Diff line number Diff line Loading @@ -222,6 +222,14 @@ public final class WallpaperColors implements Parcelable { public WallpaperColors(@NonNull Color primaryColor, @Nullable Color secondaryColor, @Nullable Color tertiaryColor) { this(primaryColor, secondaryColor, tertiaryColor, 0); // Calculate dark theme support based on primary color. final float[] tmpHsl = new float[3]; ColorUtils.colorToHSL(primaryColor.toArgb(), tmpHsl); final float luminance = tmpHsl[2]; if (luminance < DARK_THEME_MEAN_LUMINANCE) { mColorHints |= HINT_SUPPORTS_DARK_THEME; } } /** Loading tests/Internal/src/android/app/WallpaperColorsTest.java +8 −0 Original line number Diff line number Diff line Loading @@ -87,6 +87,14 @@ public class WallpaperColorsTest { + "HINT_FROM_BITMAP.", fromBitmap); } @Test public void darkMainColorSupportsDarkTheme() { final Color color = Color.valueOf(Color.BLACK); WallpaperColors colors = new WallpaperColors(color, null, null); Assert.assertTrue("Dark theme should be supported by dark main colors.", (colors.getColorHints() & WallpaperColors.HINT_SUPPORTS_DARK_THEME) != 0); } /** * WallpaperColors should not recycle bitmaps that it didn't create. */ Loading Loading
core/java/android/app/WallpaperColors.java +8 −0 Original line number Diff line number Diff line Loading @@ -222,6 +222,14 @@ public final class WallpaperColors implements Parcelable { public WallpaperColors(@NonNull Color primaryColor, @Nullable Color secondaryColor, @Nullable Color tertiaryColor) { this(primaryColor, secondaryColor, tertiaryColor, 0); // Calculate dark theme support based on primary color. final float[] tmpHsl = new float[3]; ColorUtils.colorToHSL(primaryColor.toArgb(), tmpHsl); final float luminance = tmpHsl[2]; if (luminance < DARK_THEME_MEAN_LUMINANCE) { mColorHints |= HINT_SUPPORTS_DARK_THEME; } } /** Loading
tests/Internal/src/android/app/WallpaperColorsTest.java +8 −0 Original line number Diff line number Diff line Loading @@ -87,6 +87,14 @@ public class WallpaperColorsTest { + "HINT_FROM_BITMAP.", fromBitmap); } @Test public void darkMainColorSupportsDarkTheme() { final Color color = Color.valueOf(Color.BLACK); WallpaperColors colors = new WallpaperColors(color, null, null); Assert.assertTrue("Dark theme should be supported by dark main colors.", (colors.getColorHints() & WallpaperColors.HINT_SUPPORTS_DARK_THEME) != 0); } /** * WallpaperColors should not recycle bitmaps that it didn't create. */ Loading