summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-03-03 01:12:12 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-03-03 01:12:12 +0000
commite0c0fe8e5b1258e83a35268ebe3d68e0a89cd80f (patch)
tree7dd1736a5b7343334365d38483c48dcbbd5c6b27
parent53cc2d6f1c5f602f43541c57872365ffa99d7a74 (diff)
parent8be16ca8fa9fe780552754f423351752e0cd12f0 (diff)
downloadsystemui-e0c0fe8e5b1258e83a35268ebe3d68e0a89cd80f.tar.gz
Snap for 8242241 from 8be16ca8fa9fe780552754f423351752e0cd12f0 to tm-d1-release
Change-Id: I74ea6bdaf4174d32e557041e3e3bbf822c853550
-rw-r--r--iconloaderlib/src/com/android/launcher3/icons/BaseIconFactory.java21
-rw-r--r--searchuilib/src/com/android/app/search/LayoutType.java1
2 files changed, 21 insertions, 1 deletions
diff --git a/iconloaderlib/src/com/android/launcher3/icons/BaseIconFactory.java b/iconloaderlib/src/com/android/launcher3/icons/BaseIconFactory.java
index 9dbfa86..c0be55d 100644
--- a/iconloaderlib/src/com/android/launcher3/icons/BaseIconFactory.java
+++ b/iconloaderlib/src/com/android/launcher3/icons/BaseIconFactory.java
@@ -204,7 +204,7 @@ public class BaseIconFactory implements AutoCloseable {
Drawable mono = ((AdaptiveIconDrawable) icon).getMonochrome();
if (mono != null) {
// Convert mono drawable to bitmap
- Drawable paddedMono = new InsetDrawable(mono, -getExtraInsetFraction());
+ Drawable paddedMono = new ClippedMonoDrawable(mono);
info.setMonoIcon(
createIconBitmap(paddedMono, scale[0], mIconBitmapSize, Config.ALPHA_8),
this);
@@ -472,4 +472,23 @@ public class BaseIconFactory implements AutoCloseable {
return 1;
}
}
+
+ private static class ClippedMonoDrawable extends InsetDrawable {
+
+ private final AdaptiveIconDrawable mCrop;
+
+ public ClippedMonoDrawable(Drawable base) {
+ super(base, -getExtraInsetFraction());
+ mCrop = new AdaptiveIconDrawable(new ColorDrawable(Color.BLACK), null);
+ }
+
+ @Override
+ public void draw(Canvas canvas) {
+ mCrop.setBounds(getBounds());
+ int saveCount = canvas.save();
+ canvas.clipPath(mCrop.getIconMask());
+ super.draw(canvas);
+ canvas.restoreToCount(saveCount);
+ }
+ }
}
diff --git a/searchuilib/src/com/android/app/search/LayoutType.java b/searchuilib/src/com/android/app/search/LayoutType.java
index b39cc76..0a8c8ad 100644
--- a/searchuilib/src/com/android/app/search/LayoutType.java
+++ b/searchuilib/src/com/android/app/search/LayoutType.java
@@ -43,6 +43,7 @@ public class LayoutType {
// will replace ICON_DOUBLE_* ICON_SINGLE_* layouts
public static final String ICON_HORIZONTAL_TEXT = "icon_row";
public static final String HORIZONTAL_MEDIUM_TEXT = "icon_row_medium";
+ public static final String EXTRA_TALL_ICON_ROW = "extra_tall_icon_row";
public static final String SMALL_ICON_HORIZONTAL_TEXT = "short_icon_row";
public static final String SMALL_ICON_HORIZONTAL_TEXT_THUMBNAIL = "short_icon_row_thumbnail";