diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2016-12-15 17:40:07 -0800 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2017-01-03 15:58:53 -0800 |
commit | 3fe4a146cf774261ab3552dd8ab392439c771e54 (patch) | |
tree | 5df73ef8f1166bfa827f46bb40a99974e8246cca /src/com/android/launcher3/model | |
parent | bf8a265deb093e147a5289e0958cc9b1bc50a6e3 (diff) | |
download | android_packages_apps_Trebuchet-3fe4a146cf774261ab3552dd8ab392439c771e54.tar.gz android_packages_apps_Trebuchet-3fe4a146cf774261ab3552dd8ab392439c771e54.tar.bz2 android_packages_apps_Trebuchet-3fe4a146cf774261ab3552dd8ab392439c771e54.zip |
Simplifying IconCache access code
Providing a way to access icon cache without LauncherAcitivtiyInfo.
This allows fetching LauncherActivityInfo only when required, thus
avoiding system RPC when the icon is already in cache.
Change-Id: I92918c7a0d0d0796e5f7b70d4ecb6787c52c6600
Diffstat (limited to 'src/com/android/launcher3/model')
6 files changed, 10 insertions, 25 deletions
diff --git a/src/com/android/launcher3/model/BgDataModel.java b/src/com/android/launcher3/model/BgDataModel.java index 05f43aff4..6dc5a365d 100644 --- a/src/com/android/launcher3/model/BgDataModel.java +++ b/src/com/android/launcher3/model/BgDataModel.java @@ -123,7 +123,7 @@ public class BgDataModel { break; case LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT: { // Decrement pinned shortcut count - ShortcutKey pinnedShortcut = ShortcutKey.fromShortcutInfo((ShortcutInfo) item); + ShortcutKey pinnedShortcut = ShortcutKey.fromItemInfo(item); MutableInt count = pinnedShortcutCounts.get(pinnedShortcut); Context context = LauncherAppState.getInstance().getContext(); if ((count == null || --count.value == 0) @@ -155,7 +155,7 @@ public class BgDataModel { break; case LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT: { // Increment the count for the given shortcut - ShortcutKey pinnedShortcut = ShortcutKey.fromShortcutInfo((ShortcutInfo) item); + ShortcutKey pinnedShortcut = ShortcutKey.fromItemInfo(item); MutableInt count = pinnedShortcutCounts.get(pinnedShortcut); if (count == null) { count = new MutableInt(1); diff --git a/src/com/android/launcher3/model/CacheDataUpdatedTask.java b/src/com/android/launcher3/model/CacheDataUpdatedTask.java index 9d693a40e..46130fc0b 100644 --- a/src/com/android/launcher3/model/CacheDataUpdatedTask.java +++ b/src/com/android/launcher3/model/CacheDataUpdatedTask.java @@ -65,7 +65,7 @@ public class CacheDataUpdatedTask extends ExtendedModelTask { if (si.itemType == LauncherSettings.Favorites.ITEM_TYPE_APPLICATION && isValidShortcut(si) && cn != null && mPackages.contains(cn.getPackageName())) { - iconCache.getTitleAndIcon(si, si.getPromisedIntent(), si.user, si.usingLowResIcon); + iconCache.getTitleAndIcon(si, si.usingLowResIcon); updatedShortcuts.add(si); } } diff --git a/src/com/android/launcher3/model/PackageItemInfo.java b/src/com/android/launcher3/model/PackageItemInfo.java index 00470e1ea..e05bf1e90 100644 --- a/src/com/android/launcher3/model/PackageItemInfo.java +++ b/src/com/android/launcher3/model/PackageItemInfo.java @@ -16,27 +16,15 @@ package com.android.launcher3.model; -import android.graphics.Bitmap; - -import com.android.launcher3.ItemInfo; +import com.android.launcher3.ItemInfoWithIcon; /** * Represents a {@link Package} in the widget tray section. */ -public class PackageItemInfo extends ItemInfo { - - /** - * A bitmap version of the application icon. - */ - public Bitmap iconBitmap; - - /** - * Indicates whether we're using a low res icon. - */ - public boolean usingLowResIcon; +public class PackageItemInfo extends ItemInfoWithIcon { /** - * Package name of the {@link ItemInfo}. + * Package name of the {@link PackageItemInfo}. */ public String packageName; diff --git a/src/com/android/launcher3/model/PackageUpdatedTask.java b/src/com/android/launcher3/model/PackageUpdatedTask.java index bafa95b6c..f5de6508e 100644 --- a/src/com/android/launcher3/model/PackageUpdatedTask.java +++ b/src/com/android/launcher3/model/PackageUpdatedTask.java @@ -251,15 +251,13 @@ public class PackageUpdatedTask extends ExtendedModelTask { si.status = ShortcutInfo.DEFAULT; infoUpdated = true; if (si.itemType == Favorites.ITEM_TYPE_APPLICATION) { - iconCache.getTitleAndIcon(si, si.getPromisedIntent(), - si.user, si.usingLowResIcon); + iconCache.getTitleAndIcon(si, si.usingLowResIcon); } } if (appInfo != null && Intent.ACTION_MAIN.equals(si.intent.getAction()) && si.itemType == LauncherSettings.Favorites.ITEM_TYPE_APPLICATION) { - iconCache.getTitleAndIcon( - si, si.getPromisedIntent(), si.user, si.usingLowResIcon); + iconCache.getTitleAndIcon(si, si.usingLowResIcon); infoUpdated = true; } diff --git a/src/com/android/launcher3/model/ShortcutsChangedTask.java b/src/com/android/launcher3/model/ShortcutsChangedTask.java index 3750a7e63..67bec6437 100644 --- a/src/com/android/launcher3/model/ShortcutsChangedTask.java +++ b/src/com/android/launcher3/model/ShortcutsChangedTask.java @@ -61,7 +61,7 @@ public class ShortcutsChangedTask extends ExtendedModelTask { for (ItemInfo itemInfo : dataModel.itemsIdMap) { if (itemInfo.itemType == LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT) { ShortcutInfo si = (ShortcutInfo) itemInfo; - if (si.getPromisedIntent().getPackage().equals(mPackageName) + if (si.getIntent().getPackage().equals(mPackageName) && si.user.equals(mUser)) { idsToWorkspaceShortcutInfos.addToList(si.getDeepShortcutId(), si); } diff --git a/src/com/android/launcher3/model/UserLockStateChangedTask.java b/src/com/android/launcher3/model/UserLockStateChangedTask.java index 15496b896..a214a2915 100644 --- a/src/com/android/launcher3/model/UserLockStateChangedTask.java +++ b/src/com/android/launcher3/model/UserLockStateChangedTask.java @@ -76,8 +76,7 @@ public class UserLockStateChangedTask extends ExtendedModelTask { && mUser.equals(itemInfo.user)) { ShortcutInfo si = (ShortcutInfo) itemInfo; if (isUserUnlocked) { - ShortcutInfoCompat shortcut = - pinnedShortcuts.get(ShortcutKey.fromShortcutInfo(si)); + ShortcutInfoCompat shortcut = pinnedShortcuts.get(ShortcutKey.fromItemInfo(si)); // We couldn't verify the shortcut during loader. If its no longer available // (probably due to clear data), delete the workspace item as well if (shortcut == null) { |