mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-19 10:48:19 +00:00
Dominant color is part of icon cache
> Calculating extracted color during icon generation and storing it in model and DB > Removing unused logic avoid various types of badge rendering > Icons are badged with extracted colors, while folder is badged with theme color Bug: 35428783 Change-Id: I93e30c52fbded7515c3ae1778422e84672eafb56
This commit is contained in:
@@ -32,7 +32,7 @@ import android.graphics.drawable.Drawable;
|
||||
import android.util.Property;
|
||||
import android.util.SparseArray;
|
||||
|
||||
import com.android.launcher3.graphics.IconPalette;
|
||||
import com.android.launcher3.graphics.BitmapInfo;
|
||||
|
||||
public class FastBitmapDrawable extends Drawable {
|
||||
|
||||
@@ -40,19 +40,9 @@ public class FastBitmapDrawable extends Drawable {
|
||||
private static final float DISABLED_DESATURATION = 1f;
|
||||
private static final float DISABLED_BRIGHTNESS = 0.5f;
|
||||
|
||||
public static final TimeInterpolator CLICK_FEEDBACK_INTERPOLATOR = new TimeInterpolator() {
|
||||
public static final TimeInterpolator CLICK_FEEDBACK_INTERPOLATOR = (input) ->
|
||||
(input < 0.05f) ? (input / 0.05f) : ((input < 0.3f) ? 1 : (1 - input) / 0.7f);
|
||||
|
||||
@Override
|
||||
public float getInterpolation(float input) {
|
||||
if (input < 0.05f) {
|
||||
return input / 0.05f;
|
||||
} else if (input < 0.3f){
|
||||
return 1;
|
||||
} else {
|
||||
return (1 - input) / 0.7f;
|
||||
}
|
||||
}
|
||||
};
|
||||
public static final int CLICK_FEEDBACK_DURATION = 2000;
|
||||
|
||||
// Since we don't need 256^2 values for combinations of both the brightness and saturation, we
|
||||
@@ -69,12 +59,11 @@ public class FastBitmapDrawable extends Drawable {
|
||||
|
||||
protected final Paint mPaint = new Paint(Paint.FILTER_BITMAP_FLAG | Paint.ANTI_ALIAS_FLAG);
|
||||
private final Bitmap mBitmap;
|
||||
protected final int mIconColor;
|
||||
|
||||
private boolean mIsPressed;
|
||||
private boolean mIsDisabled;
|
||||
|
||||
private IconPalette mIconPalette;
|
||||
|
||||
private static final Property<FastBitmapDrawable, Float> BRIGHTNESS
|
||||
= new Property<FastBitmapDrawable, Float>(Float.TYPE, "brightness") {
|
||||
@Override
|
||||
@@ -99,7 +88,20 @@ public class FastBitmapDrawable extends Drawable {
|
||||
private ObjectAnimator mBrightnessAnimator;
|
||||
|
||||
public FastBitmapDrawable(Bitmap b) {
|
||||
this(b, Color.TRANSPARENT);
|
||||
}
|
||||
|
||||
public FastBitmapDrawable(BitmapInfo info) {
|
||||
this(info.icon, info.color);
|
||||
}
|
||||
|
||||
public FastBitmapDrawable(ItemInfoWithIcon info) {
|
||||
this(info.iconBitmap, info.iconColor);
|
||||
}
|
||||
|
||||
protected FastBitmapDrawable(Bitmap b, int iconColor) {
|
||||
mBitmap = b;
|
||||
mIconColor = iconColor;
|
||||
setFilterBitmap(true);
|
||||
}
|
||||
|
||||
@@ -108,14 +110,6 @@ public class FastBitmapDrawable extends Drawable {
|
||||
canvas.drawBitmap(mBitmap, null, getBounds(), mPaint);
|
||||
}
|
||||
|
||||
public IconPalette getIconPalette() {
|
||||
if (mIconPalette == null) {
|
||||
mIconPalette = IconPalette.fromDominantColor(Utilities
|
||||
.findDominantColorByHue(mBitmap, 20), true /* desaturateBackground */);
|
||||
}
|
||||
return mIconPalette;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setColorFilter(ColorFilter cf) {
|
||||
// No op
|
||||
|
||||
Reference in New Issue
Block a user