diff --git a/src/com/android/launcher3/FastBitmapDrawable.java b/src/com/android/launcher3/FastBitmapDrawable.java index 199baaf588..2ec6b4c811 100644 --- a/src/com/android/launcher3/FastBitmapDrawable.java +++ b/src/com/android/launcher3/FastBitmapDrawable.java @@ -36,8 +36,6 @@ import com.android.launcher3.graphics.IconPalette; public class FastBitmapDrawable extends Drawable { - private static final int[] STATE_PRESSED = new int[] {android.R.attr.state_pressed}; - private static final float PRESSED_BRIGHTNESS = 100f / 255f; private static final float DISABLED_DESATURATION = 1f; private static final float DISABLED_BRIGHTNESS = 0.5f; @@ -184,6 +182,11 @@ public class FastBitmapDrawable extends Drawable { return true; } + @Override + public ColorFilter getColorFilter() { + return mPaint.getColorFilter(); + } + @Override protected boolean onStateChange(int[] state) { boolean isPressed = false; diff --git a/src/com/android/launcher3/dragndrop/DragView.java b/src/com/android/launcher3/dragndrop/DragView.java index 0418d255dd..ab2f100360 100644 --- a/src/com/android/launcher3/dragndrop/DragView.java +++ b/src/com/android/launcher3/dragndrop/DragView.java @@ -29,6 +29,7 @@ import android.content.pm.LauncherActivityInfo; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; +import android.graphics.ColorFilter; import android.graphics.ColorMatrix; import android.graphics.ColorMatrixColorFilter; import android.graphics.Matrix; @@ -245,6 +246,15 @@ public class DragView extends FrameLayout { addView(mBgImageView); addView(mFgImageView); setWillNotDraw(true); + + if (info.isDisabled()) { + FastBitmapDrawable d = new FastBitmapDrawable(null); + d.setIsDisabled(true); + ColorFilter cf = d.getColorFilter(); + mBgImageView.setColorFilter(cf); + mFgImageView.setColorFilter(cf); + mBadge.setColorFilter(cf); + } } }); }