From 9279496e542e6dee3355e19e4a696e800873ee96 Mon Sep 17 00:00:00 2001 From: Hyunyoung Song Date: Tue, 6 Jun 2017 12:12:22 -0700 Subject: [PATCH] Prevent clipping on the top and left side on AdaptiveIconDrawables b/62372639 Change-Id: I0b2c0daecba2904f3e89f7b0b558d9b10f5dcbf6 --- src/com/android/launcher3/graphics/LauncherIcons.java | 5 +++-- src/com/android/launcher3/graphics/ShadowGenerator.java | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/com/android/launcher3/graphics/LauncherIcons.java b/src/com/android/launcher3/graphics/LauncherIcons.java index 53521f22d0..19e5702476 100644 --- a/src/com/android/launcher3/graphics/LauncherIcons.java +++ b/src/com/android/launcher3/graphics/LauncherIcons.java @@ -266,9 +266,10 @@ public class LauncherIcons { sOldBounds.set(icon.getBounds()); if (Utilities.isAtLeastO() && icon instanceof AdaptiveIconDrawable) { - int offset = Math.min(left, top); + int offset = Math.max((int)(ShadowGenerator.BLUR_FACTOR * iconBitmapSize), + Math.min(left, top)); int size = Math.max(width, height); - icon.setBounds(offset, offset, offset + size, offset + size); + icon.setBounds(offset, offset, size, size); } else { icon.setBounds(left, top, left+width, top+height); } diff --git a/src/com/android/launcher3/graphics/ShadowGenerator.java b/src/com/android/launcher3/graphics/ShadowGenerator.java index 469fe34e9f..5d8cca8d29 100644 --- a/src/com/android/launcher3/graphics/ShadowGenerator.java +++ b/src/com/android/launcher3/graphics/ShadowGenerator.java @@ -35,7 +35,7 @@ public class ShadowGenerator { // Percent of actual icon size private static final float HALF_DISTANCE = 0.5f; - private static final float BLUR_FACTOR = 0.5f/48; + public static final float BLUR_FACTOR = 0.5f/48; // Percent of actual icon size private static final float KEY_SHADOW_DISTANCE = 1f/48;