diff options
author | Tony Wickham <twickham@google.com> | 2016-08-29 15:17:48 -0700 |
---|---|---|
committer | Adam Cohen <adamcohen@google.com> | 2016-08-30 00:09:11 +0000 |
commit | def6e474dad311224b97ae66f62c3313c6542955 (patch) | |
tree | 7048c0cb26a862f54a74efdbdd50d96a8fd0b7f8 /src/com/android/launcher3/Launcher.java | |
parent | d70ef242332e766b2c23e3b8bb537dc2d584e9ec (diff) | |
download | android_packages_apps_Trebuchet-def6e474dad311224b97ae66f62c3313c6542955.tar.gz android_packages_apps_Trebuchet-def6e474dad311224b97ae66f62c3313c6542955.tar.bz2 android_packages_apps_Trebuchet-def6e474dad311224b97ae66f62c3313c6542955.zip |
Use promisedIntent instead of intent when deep shortcuts are restored.
This ensures that the intent has the package corresponding to the
shortcut publisher, rather than a market intent. It also ensures that
the intent has the EXTRA_SHORTCUT_ID attached.
Bug: 31123204
Change-Id: I05d56396b629880322e915f52bfc0605b921b0b1
(cherry picked from commit fc02c1b446ee54561ac7351fb6ff0f8294785f0e)
Diffstat (limited to 'src/com/android/launcher3/Launcher.java')
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 886c5f0a2..81c95e7ed 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -2954,7 +2954,8 @@ public class Launcher extends Activity try { if (Utilities.ATLEAST_MARSHMALLOW && item != null && (item.itemType == Favorites.ITEM_TYPE_SHORTCUT - || item.itemType == Favorites.ITEM_TYPE_DEEP_SHORTCUT)) { + || item.itemType == Favorites.ITEM_TYPE_DEEP_SHORTCUT) + && ((ShortcutInfo) item).promisedIntent == null) { // Shortcuts need some special checks due to legacy reasons. startShortcutIntentSafely(intent, optsBundle, item); } else if (user == null || user.equals(UserHandleCompat.myUserHandle())) { @@ -4267,7 +4268,7 @@ public class Launcher extends Activity for (ShortcutInfo si : removed) { if (si.itemType == Favorites.ITEM_TYPE_DEEP_SHORTCUT) { - removedDeepShortcuts.add(ShortcutKey.fromItemInfo(si)); + removedDeepShortcuts.add(ShortcutKey.fromShortcutInfo(si)); } else { removedComponents.add(si.getTargetComponent()); } |