summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/graphics/LauncherIcons.java
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2017-02-02 16:37:21 -0800
committerSunny Goyal <sunnygoyal@google.com>2017-02-06 10:43:27 -0800
commit96ac68a481ce5b794b5227e09ace7c30d6dd5e7b (patch)
tree9ea46cdeccfce02fbe0830d7430f9f95c64557b6 /src/com/android/launcher3/graphics/LauncherIcons.java
parente1fa0145d36fbefeb397f952cba2689ce537d786 (diff)
downloadandroid_packages_apps_Trebuchet-96ac68a481ce5b794b5227e09ace7c30d6dd5e7b.tar.gz
android_packages_apps_Trebuchet-96ac68a481ce5b794b5227e09ace7c30d6dd5e7b.tar.bz2
android_packages_apps_Trebuchet-96ac68a481ce5b794b5227e09ace7c30d6dd5e7b.zip
Updating the PreloadIconDrawable
> The drawable gets the path from MaskIconDrawable path, instead of using a circle > The progress changes are animated as well Bug: 34831873 Change-Id: I4e7f0b610f4fd94de8e0cfcf8b179b775cf0b4d8
Diffstat (limited to 'src/com/android/launcher3/graphics/LauncherIcons.java')
-rw-r--r--src/com/android/launcher3/graphics/LauncherIcons.java20
1 files changed, 7 insertions, 13 deletions
diff --git a/src/com/android/launcher3/graphics/LauncherIcons.java b/src/com/android/launcher3/graphics/LauncherIcons.java
index 472b9135b..3fffb5bb5 100644
--- a/src/com/android/launcher3/graphics/LauncherIcons.java
+++ b/src/com/android/launcher3/graphics/LauncherIcons.java
@@ -29,13 +29,10 @@ import android.graphics.PaintFlagsDrawFilter;
import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.drawable.BitmapDrawable;
-import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.PaintDrawable;
-import android.graphics.drawable.ScaleDrawable;
import android.os.Process;
import android.os.UserHandle;
-import android.view.Gravity;
import com.android.launcher3.AppInfo;
import com.android.launcher3.IconCache;
@@ -52,8 +49,6 @@ import com.android.launcher3.shortcuts.ShortcutInfoCompat;
* Helper methods for generating various launcher icons
*/
public class LauncherIcons {
- // TODO b/33553066 use the constant defined in MaskableIconDrawable
- private static final float LEGACY_ICON_SCALE = .7f * .6667f;
private static final Rect sOldBounds = new Rect();
private static final Canvas sCanvas = new Canvas();
@@ -236,17 +231,16 @@ public class LauncherIcons {
if (!(ProviderConfig.IS_DOGFOOD_BUILD && Utilities.isAtLeastO())) {
return drawable;
}
- int color = context.getResources().getColor(R.color.legacy_icon_background);
- ColorDrawable colorDrawable = new ColorDrawable(color);
- ScaleDrawable scaleDrawable = new ScaleDrawable(drawable,
- Gravity.CENTER, LEGACY_ICON_SCALE, LEGACY_ICON_SCALE);
- scaleDrawable.setLevel(1);
+
try {
Class clazz = Class.forName("android.graphics.drawable.MaskableIconDrawable");
- if (!clazz.isAssignableFrom(drawable.getClass())){
+ if (!clazz.isAssignableFrom(drawable.getClass())) {
+ Drawable maskWrapper =
+ context.getDrawable(R.drawable.mask_drawable_wrapper).mutate();
+ ((FixedScaleDrawable) clazz.getMethod("getForeground").invoke(maskWrapper))
+ .setDrawable(drawable);
- return (Drawable) clazz.getConstructor(Drawable.class, Drawable.class)
- .newInstance(colorDrawable, scaleDrawable);
+ return maskWrapper;
}
} catch (Exception e) {
return drawable;