diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/launcher3/graphics/IconNormalizer.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/com/android/launcher3/graphics/IconNormalizer.java b/src/com/android/launcher3/graphics/IconNormalizer.java index 13f322e8b..34d0b727c 100644 --- a/src/com/android/launcher3/graphics/IconNormalizer.java +++ b/src/com/android/launcher3/graphics/IconNormalizer.java @@ -74,6 +74,8 @@ public class IconNormalizer { private final Paint mPaintMaskShapeOutline; private final byte[] mPixels; private final int[] mPixelsARGB; + + private final Rect mAdaptiveIconBounds; private float mAdaptiveIconScale; // for each y, stores the position of the leftmost x and the rightmost x @@ -99,6 +101,7 @@ public class IconNormalizer { mLeftBorder = new float[mMaxSize]; mRightBorder = new float[mMaxSize]; mBounds = new Rect(); + mAdaptiveIconBounds = new Rect(); // Needed for isShape() method mBitmapARGB = Bitmap.createBitmap(mMaxSize, mMaxSize, Bitmap.Config.ARGB_8888); @@ -231,7 +234,7 @@ public class IconNormalizer { if (Utilities.isAtLeastO() && d instanceof AdaptiveIconDrawable && mAdaptiveIconScale != SCALE_NOT_INITIALIZED) { if (outBounds != null) { - outBounds.set(mBounds); + outBounds.set(mAdaptiveIconBounds); } return mAdaptiveIconScale; } @@ -347,6 +350,7 @@ public class IconNormalizer { if (Utilities.isAtLeastO() && d instanceof AdaptiveIconDrawable && mAdaptiveIconScale == SCALE_NOT_INITIALIZED) { mAdaptiveIconScale = scale; + mAdaptiveIconBounds.set(mBounds); } return scale; } |