Merge "Fix error computing tertiary hue" into sc-v2-dev am: 91af339bfe
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16222177 Change-Id: I984beab23969c37aa436d5542ebcd50ee499168e
This commit is contained in:
@@ -85,9 +85,10 @@ public class ColorScheme(@ColorInt seed: Int, val darkTheme: Boolean) {
|
|||||||
val camSeed = Cam.fromInt(seedArgb)
|
val camSeed = Cam.fromInt(seedArgb)
|
||||||
val hue = camSeed.hue
|
val hue = camSeed.hue
|
||||||
val chroma = camSeed.chroma.coerceAtLeast(ACCENT1_CHROMA)
|
val chroma = camSeed.chroma.coerceAtLeast(ACCENT1_CHROMA)
|
||||||
|
val tertiaryHue = wrapDegrees((hue + ACCENT3_HUE_SHIFT).toInt())
|
||||||
accent1 = Shades.of(hue, chroma).toList()
|
accent1 = Shades.of(hue, chroma).toList()
|
||||||
accent2 = Shades.of(hue, ACCENT2_CHROMA).toList()
|
accent2 = Shades.of(hue, ACCENT2_CHROMA).toList()
|
||||||
accent3 = Shades.of(hue + ACCENT3_HUE_SHIFT, ACCENT3_CHROMA).toList()
|
accent3 = Shades.of(tertiaryHue.toFloat(), ACCENT3_CHROMA).toList()
|
||||||
neutral1 = Shades.of(hue, NEUTRAL1_CHROMA).toList()
|
neutral1 = Shades.of(hue, NEUTRAL1_CHROMA).toList()
|
||||||
neutral2 = Shades.of(hue, NEUTRAL2_CHROMA).toList()
|
neutral2 = Shades.of(hue, NEUTRAL2_CHROMA).toList()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import android.testing.AndroidTestingRunner;
|
|||||||
|
|
||||||
import androidx.test.filters.SmallTest;
|
import androidx.test.filters.SmallTest;
|
||||||
|
|
||||||
|
import com.android.internal.graphics.cam.Cam;
|
||||||
import com.android.systemui.SysuiTestCase;
|
import com.android.systemui.SysuiTestCase;
|
||||||
|
|
||||||
import org.junit.Assert;
|
import org.junit.Assert;
|
||||||
@@ -90,4 +91,13 @@ public class ColorSchemeTest extends SysuiTestCase {
|
|||||||
List<Integer> rankedSeedColors = ColorScheme.getSeedColors(wallpaperColors);
|
List<Integer> rankedSeedColors = ColorScheme.getSeedColors(wallpaperColors);
|
||||||
Assert.assertEquals(rankedSeedColors, List.of(0xffaec00a, 0xffbe0000, 0xffcc040f));
|
Assert.assertEquals(rankedSeedColors, List.of(0xffaec00a, 0xffbe0000, 0xffcc040f));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testTertiaryHueWrapsProperly() {
|
||||||
|
int colorInt = 0xffB3588A; // H350 C50 T50
|
||||||
|
ColorScheme colorScheme = new ColorScheme(colorInt, false /* darkTheme */);
|
||||||
|
int tertiaryMid = colorScheme.getAccent3().get(colorScheme.getAccent3().size() / 2);
|
||||||
|
Cam cam = Cam.fromInt(tertiaryMid);
|
||||||
|
Assert.assertEquals(cam.getHue(), 50.0, 10.0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user