Add disabled boolean to FastBitmapDrawable constant state.

Bug: 129328259
Change-Id: I70c1fc6d786b3fd2c51129624b947b313df69e7f
This commit is contained in:
Jon Miranda
2019-03-29 10:49:43 -07:00
parent 814b615b62
commit b6d686dceb

View File

@@ -103,9 +103,14 @@ public class FastBitmapDrawable extends Drawable {
}
protected FastBitmapDrawable(Bitmap b, int iconColor) {
this(b, iconColor, false);
}
protected FastBitmapDrawable(Bitmap b, int iconColor, boolean isDisabled) {
mBitmap = b;
mIconColor = iconColor;
setFilterBitmap(true);
setIsDisabled(isDisabled);
}
@Override
@@ -249,6 +254,10 @@ public class FastBitmapDrawable extends Drawable {
}
}
protected boolean isDisabled() {
return mIsDisabled;
}
/**
* Sets the saturation of this icon, 0 [full color] -> 1 [desaturated]
*/
@@ -338,21 +347,23 @@ public class FastBitmapDrawable extends Drawable {
@Override
public ConstantState getConstantState() {
return new MyConstantState(mBitmap, mIconColor);
return new MyConstantState(mBitmap, mIconColor, mIsDisabled);
}
protected static class MyConstantState extends ConstantState {
protected final Bitmap mBitmap;
protected final int mIconColor;
protected final boolean mIsDisabled;
public MyConstantState(Bitmap bitmap, int color) {
public MyConstantState(Bitmap bitmap, int color, boolean isDisabled) {
mBitmap = bitmap;
mIconColor = color;
mIsDisabled = isDisabled;
}
@Override
public Drawable newDrawable() {
return new FastBitmapDrawable(mBitmap, mIconColor);
return new FastBitmapDrawable(mBitmap, mIconColor, mIsDisabled);
}
@Override