Use promisedIntent instead of intent when deep shortcuts are restored.

am: fc02c1b446

Change-Id: Ic4c7bc4dfbeb2260f411edd56df2df3769127365
This commit is contained in:
Tony Wickham
2016-08-29 23:55:57 +00:00
committed by android-build-merger
5 changed files with 21 additions and 11 deletions
+7 -4
View File
@@ -930,7 +930,8 @@ public class LauncherModel extends BroadcastReceiver
}
if (item.itemType == LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT) {
incrementPinnedShortcutCount(
ShortcutKey.fromItemInfo(item), true /* shouldPin */);
ShortcutKey.fromShortcutInfo((ShortcutInfo) item),
true /* shouldPin */);
}
break;
case LauncherSettings.Favorites.ITEM_TYPE_APPWIDGET:
@@ -999,7 +1000,8 @@ public class LauncherModel extends BroadcastReceiver
sBgWorkspaceItems.remove(item);
break;
case LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT:
decrementPinnedShortcutCount(ShortcutKey.fromItemInfo(item));
decrementPinnedShortcutCount(ShortcutKey.fromShortcutInfo(
(ShortcutInfo) item));
// Fall through.
case LauncherSettings.Favorites.ITEM_TYPE_APPLICATION:
case LauncherSettings.Favorites.ITEM_TYPE_SHORTCUT:
@@ -3388,7 +3390,8 @@ public class LauncherModel extends BroadcastReceiver
for (ItemInfo itemInfo : sBgItemsIdMap) {
if (itemInfo.itemType == LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT) {
ShortcutInfo si = (ShortcutInfo) itemInfo;
if (si.getIntent().getPackage().equals(mPackageName) && si.user.equals(mUser)) {
if (si.getPromisedIntent().getPackage().equals(mPackageName)
&& si.user.equals(mUser)) {
String shortcutId = si.getDeepShortcutId();
if (idsToShortcuts.containsKey(shortcutId)) {
idsToWorkspaceShortcutInfos.addToList(shortcutId, si);
@@ -3461,7 +3464,7 @@ public class LauncherModel extends BroadcastReceiver
ShortcutInfo si = (ShortcutInfo) itemInfo;
if (isUserUnlocked) {
ShortcutInfoCompat shortcut =
pinnedShortcuts.get(ShortcutKey.fromItemInfo(si));
pinnedShortcuts.get(ShortcutKey.fromShortcutInfo(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) {