diff --git a/AndroidManifest-common.xml b/AndroidManifest-common.xml index 86ae73e6ee..da1679f7fb 100644 --- a/AndroidManifest-common.xml +++ b/AndroidManifest-common.xml @@ -49,7 +49,7 @@ android:fullBackupOnly="true" android:fullBackupContent="@xml/backupscheme" android:hardwareAccelerated="true" - android:icon="@mipmap/ic_launcher_home" + android:icon="@drawable/ic_launcher_home" android:label="@string/derived_app_name" android:largeHeap="@bool/config_largeHeap" android:restoreAnyVersion="true" diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 3b721ab576..bcb522b21f 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -54,7 +54,7 @@ android:fullBackupOnly="true" android:fullBackupContent="@xml/backupscheme" android:hardwareAccelerated="true" - android:icon="@mipmap/ic_launcher_home" + android:icon="@drawable/ic_launcher_home" android:label="@string/derived_app_name" android:theme="@style/LauncherTheme" android:largeHeap="@bool/config_largeHeap" @@ -135,7 +135,7 @@ android:theme="@android:style/Theme.NoDisplay" android:label="* HPROF" android:excludeFromRecents="true" - android:icon="@mipmap/ic_launcher_home" + android:icon="@drawable/ic_launcher_home" > @@ -147,7 +147,7 @@ + android:icon="@drawable/ic_launcher_home"> diff --git a/res/drawable-v26/mask_drawable_wrapper.xml b/res/drawable-v26/adaptive_icon_drawable_wrapper.xml similarity index 91% rename from res/drawable-v26/mask_drawable_wrapper.xml rename to res/drawable-v26/adaptive_icon_drawable_wrapper.xml index 36efd0f952..7ad8e2c64e 100644 --- a/res/drawable-v26/mask_drawable_wrapper.xml +++ b/res/drawable-v26/adaptive_icon_drawable_wrapper.xml @@ -14,9 +14,9 @@ See the License for the specific language governing permissions and limitations under the License. --> - + - + diff --git a/res/drawable-v26/ic_launcher_home.xml b/res/drawable-v26/ic_launcher_home.xml new file mode 100644 index 0000000000..7038775f35 --- /dev/null +++ b/res/drawable-v26/ic_launcher_home.xml @@ -0,0 +1,21 @@ + + + + + + + + diff --git a/res/drawable/ic_launcher_home.xml b/res/drawable/ic_launcher_home.xml new file mode 100644 index 0000000000..a6f2519954 --- /dev/null +++ b/res/drawable/ic_launcher_home.xml @@ -0,0 +1,18 @@ + + + diff --git a/res/mipmap-hdpi/ic_launcher_home_foreground.png b/res/mipmap-hdpi/ic_launcher_home_foreground.png new file mode 100644 index 0000000000..d068d92361 Binary files /dev/null and b/res/mipmap-hdpi/ic_launcher_home_foreground.png differ diff --git a/res/mipmap-mdpi/ic_launcher_home_foreground.png b/res/mipmap-mdpi/ic_launcher_home_foreground.png new file mode 100644 index 0000000000..0ed9f4d814 Binary files /dev/null and b/res/mipmap-mdpi/ic_launcher_home_foreground.png differ diff --git a/res/mipmap-xhdpi/ic_launcher_home_foreground.png b/res/mipmap-xhdpi/ic_launcher_home_foreground.png new file mode 100644 index 0000000000..7a9daf5bfe Binary files /dev/null and b/res/mipmap-xhdpi/ic_launcher_home_foreground.png differ diff --git a/res/mipmap-xxhdpi/ic_launcher_home_foreground.png b/res/mipmap-xxhdpi/ic_launcher_home_foreground.png new file mode 100644 index 0000000000..03b493e4a3 Binary files /dev/null and b/res/mipmap-xxhdpi/ic_launcher_home_foreground.png differ diff --git a/res/values/colors.xml b/res/values/colors.xml index 68f0092951..83a44d7b9a 100644 --- a/res/values/colors.xml +++ b/res/values/colors.xml @@ -40,4 +40,5 @@ #FFF #E0E0E0 @color/notification_color_beneath + #E0E0E0 diff --git a/src/com/android/launcher3/graphics/DrawableFactory.java b/src/com/android/launcher3/graphics/DrawableFactory.java index 8b207bb0cd..60bbce4066 100644 --- a/src/com/android/launcher3/graphics/DrawableFactory.java +++ b/src/com/android/launcher3/graphics/DrawableFactory.java @@ -85,10 +85,10 @@ public class DrawableFactory { if (Utilities.isAtLeastO()) { try { // Try to load the path from Mask Icon - Drawable maskIcon = context.getDrawable(R.drawable.mask_drawable_wrapper); - maskIcon.setBounds(0, 0, + Drawable icon = context.getDrawable(R.drawable.adaptive_icon_drawable_wrapper); + icon.setBounds(0, 0, PreloadIconDrawable.PATH_SIZE, PreloadIconDrawable.PATH_SIZE); - return (Path) maskIcon.getClass().getMethod("getIconMask").invoke(maskIcon); + return (Path) icon.getClass().getMethod("getIconMask").invoke(icon); } catch (Exception e) { Log.e(TAG, "Error loading mask icon", e); } diff --git a/src/com/android/launcher3/graphics/LauncherIcons.java b/src/com/android/launcher3/graphics/LauncherIcons.java index 5db395be6e..ef54661d30 100644 --- a/src/com/android/launcher3/graphics/LauncherIcons.java +++ b/src/com/android/launcher3/graphics/LauncherIcons.java @@ -40,7 +40,6 @@ import com.android.launcher3.LauncherAppState; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.config.FeatureFlags; -import com.android.launcher3.config.ProviderConfig; import com.android.launcher3.model.PackageItemInfo; import com.android.launcher3.shortcuts.DeepShortcutManager; import com.android.launcher3.shortcuts.ShortcutInfoCompat; @@ -166,7 +165,7 @@ public class LauncherIcons { * @param scale the scale to apply before drawing {@param icon} on the canvas */ public static Bitmap createIconBitmap(Drawable icon, Context context, float scale) { - icon = wrapToMaskableIconDrawable(context, icon); + icon = wrapToAdaptiveIconDrawable(context, icon); synchronized (sCanvas) { final int iconBitmapSize = LauncherAppState.getIDP(context).iconBitmapSize; @@ -233,11 +232,11 @@ public class LauncherIcons { } /** - * If the platform is running O but the app is not providing MaskableIconDrawable, then + * If the platform is running O but the app is not providing AdaptiveIconDrawable, then * shrink the legacy icon and set it as foreground. Use color drawable as background to - * create MaskableIconDrawable. + * create AdaptiveIconDrawable. */ - static Drawable wrapToMaskableIconDrawable(Context context, Drawable drawable) { + static Drawable wrapToAdaptiveIconDrawable(Context context, Drawable drawable) { if (!(FeatureFlags.LEGACY_ICON_TREATMENT && Utilities.isAtLeastO())) { return drawable; } @@ -245,12 +244,12 @@ public class LauncherIcons { try { Class clazz = Class.forName("android.graphics.drawable.AdaptiveIconDrawable"); if (!clazz.isAssignableFrom(drawable.getClass())) { - Drawable maskWrapper = - context.getDrawable(R.drawable.mask_drawable_wrapper).mutate(); - ((FixedScaleDrawable) clazz.getMethod("getForeground").invoke(maskWrapper)) + Drawable iconWrapper = + context.getDrawable(R.drawable.adaptive_icon_drawable_wrapper).mutate(); + ((FixedScaleDrawable) clazz.getMethod("getForeground").invoke(iconWrapper)) .setDrawable(drawable); - return maskWrapper; + return iconWrapper; } } catch (Exception e) { return drawable;