Align badging logic with platform IconDrawableFactory. am: b0be237b3f am: d0993b2b6c

am: 5745ff4754

Change-Id: I96723522febf68029efdf099269c0e4b7d7c149e
This commit is contained in:
Hai Zhang
2019-05-21 05:59:25 -07:00
committed by android-build-merger
@@ -161,22 +161,19 @@ public class BaseIconFactory implements AutoCloseable {
mCanvas.setBitmap(null);
}
final Bitmap result;
if (user != null && !Process.myUserHandle().equals(user)) {
if (isInstantApp) {
badgeWithDrawable(bitmap, mContext.getDrawable(R.drawable.ic_instant_app_badge));
}
if (user != null) {
BitmapDrawable drawable = new FixedSizeBitmapDrawable(bitmap);
Drawable badged = mPm.getUserBadgedIcon(drawable, user);
if (badged instanceof BitmapDrawable) {
result = ((BitmapDrawable) badged).getBitmap();
bitmap = ((BitmapDrawable) badged).getBitmap();
} else {
result = createIconBitmap(badged, 1f);
bitmap = createIconBitmap(badged, 1f);
}
} else if (isInstantApp) {
badgeWithDrawable(bitmap, mContext.getDrawable(R.drawable.ic_instant_app_badge));
result = bitmap;
} else {
result = bitmap;
}
return BitmapInfo.fromBitmap(result, mDisableColorExtractor ? null : mColorExtractor);
return BitmapInfo.fromBitmap(bitmap, mDisableColorExtractor ? null : mColorExtractor);
}
public Bitmap createScaledBitmapWithoutShadow(Drawable icon, boolean shrinkNonAdaptiveIcons) {