Fixes a wrong cast position.
There should do type cast before calculate. But still, the background of splash screen cannot be translucent. Bug: 269794589 Test: set windowSplashScreenBackground with translucent color, and verify the splash screen background color shouldn't be translucent. Change-Id: I2a8719eb9dad5267e5675dc68ab69558cb9cdfa1
This commit is contained in:
@@ -384,10 +384,10 @@ public class SplashscreenContentDrawer {
|
||||
|
||||
private static int estimateWindowBGColor(Drawable themeBGDrawable) {
|
||||
final DrawableColorTester themeBGTester = new DrawableColorTester(
|
||||
themeBGDrawable, DrawableColorTester.TRANSPARENT_FILTER /* filterType */);
|
||||
if (themeBGTester.passFilterRatio() == 0) {
|
||||
// the window background is transparent, unable to draw
|
||||
Slog.w(TAG, "Window background is transparent, fill background with black color");
|
||||
themeBGDrawable, DrawableColorTester.TRANSLUCENT_FILTER /* filterType */);
|
||||
if (themeBGTester.passFilterRatio() != 1) {
|
||||
// the window background is translucent, unable to draw
|
||||
Slog.w(TAG, "Window background is translucent, fill background with black color");
|
||||
return getSystemBGColor();
|
||||
} else {
|
||||
return themeBGTester.getDominateColor();
|
||||
@@ -870,7 +870,7 @@ public class SplashscreenContentDrawer {
|
||||
@Override
|
||||
public float passFilterRatio() {
|
||||
final int alpha = mColorDrawable.getAlpha();
|
||||
return (float) (alpha / 255);
|
||||
return alpha / 255.0f;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user