diff --git a/src/com/android/launcher2/IconCache.java b/src/com/android/launcher2/IconCache.java index 4bb7d08c01..81a786ca74 100644 --- a/src/com/android/launcher2/IconCache.java +++ b/src/com/android/launcher2/IconCache.java @@ -124,6 +124,10 @@ public class IconCache { } } + public boolean isDefaultIcon(Bitmap icon) { + return mDefaultIcon == icon; + } + private CacheEntry cacheLocked(ComponentName componentName, ResolveInfo info) { CacheEntry entry = mCache.get(componentName); if (entry == null) { diff --git a/src/com/android/launcher2/LauncherModel.java b/src/com/android/launcher2/LauncherModel.java index eb341f68a1..c1ecf506e0 100644 --- a/src/com/android/launcher2/LauncherModel.java +++ b/src/com/android/launcher2/LauncherModel.java @@ -1490,7 +1490,7 @@ public class LauncherModel extends BroadcastReceiver { // into the DB. We do this so when we're loading, if the // package manager can't find an icon (for example because // the app is on SD) then we can use that instead. - if (info.onExternalStorage && !info.customIcon && !info.usingFallbackIcon) { + if (!info.customIcon && !info.usingFallbackIcon) { boolean needSave; byte[] data = c.getBlob(iconIndex); try { diff --git a/src/com/android/launcher2/ShortcutInfo.java b/src/com/android/launcher2/ShortcutInfo.java index 5c322baaa6..2c5aec4365 100644 --- a/src/com/android/launcher2/ShortcutInfo.java +++ b/src/com/android/launcher2/ShortcutInfo.java @@ -53,11 +53,6 @@ class ShortcutInfo extends ItemInfo { */ boolean usingFallbackIcon; - /** - * Indicates whether the shortcut is on external storage and may go away at any time. - */ - boolean onExternalStorage; - /** * If isShortcut=true and customIcon=false, this contains a reference to the * shortcut icon as an application's resource. @@ -101,6 +96,7 @@ class ShortcutInfo extends ItemInfo { public Bitmap getIcon(IconCache iconCache) { if (mIcon == null) { mIcon = iconCache.getIcon(this.intent); + this.usingFallbackIcon = iconCache.isDefaultIcon(mIcon); } return mIcon; } @@ -135,7 +131,7 @@ class ShortcutInfo extends ItemInfo { LauncherSettings.BaseLauncherColumns.ICON_TYPE_BITMAP); writeBitmap(values, mIcon); } else { - if (onExternalStorage && !usingFallbackIcon) { + if (!usingFallbackIcon) { writeBitmap(values, mIcon); } values.put(LauncherSettings.BaseLauncherColumns.ICON_TYPE,