summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/DeleteDropTarget.java
diff options
context:
space:
mode:
authorNilesh Agrawal <nileshagrawal@google.com>2013-12-17 15:20:50 -0800
committerNilesh Agrawal <nileshagrawal@google.com>2013-12-17 15:26:00 -0800
commitdff0bfeb901e767ca9b57f9b8051c7fd077626e9 (patch)
tree88c22b901143b2ef8ab003da906b308e343162eb /src/com/android/launcher3/DeleteDropTarget.java
parentf6a22ada816ae4f63576679f03472b0a984e82be (diff)
downloadandroid_packages_apps_Trebuchet-dff0bfeb901e767ca9b57f9b8051c7fd077626e9.tar.gz
android_packages_apps_Trebuchet-dff0bfeb901e767ca9b57f9b8051c7fd077626e9.tar.bz2
android_packages_apps_Trebuchet-dff0bfeb901e767ca9b57f9b8051c7fd077626e9.zip
Do not allow duplicate shortcuts when ALL_APPS is disabled.
When DISABLE_ALL_APPS is true, we want to have only one shortcut for each activityexposed via the Application's manifest. We ignore INSTALL_SHORTCUT broadcasts which have launch intents with ACTION_MAIN and CATEGORY_LAUNCHER. Applications can still create shortcuts pointing to an already exposed component if they provide data or extras in the intent. Change-Id: I0b05283ea6c522d197e0262c2997f7298e08740b
Diffstat (limited to 'src/com/android/launcher3/DeleteDropTarget.java')
-rw-r--r--src/com/android/launcher3/DeleteDropTarget.java15
1 files changed, 2 insertions, 13 deletions
diff --git a/src/com/android/launcher3/DeleteDropTarget.java b/src/com/android/launcher3/DeleteDropTarget.java
index a8ac0746c..c76425a5e 100644
--- a/src/com/android/launcher3/DeleteDropTarget.java
+++ b/src/com/android/launcher3/DeleteDropTarget.java
@@ -266,19 +266,8 @@ public class DeleteDropTarget extends ButtonDropTarget {
private boolean isUninstallFromWorkspace(DragObject d) {
if (AppsCustomizePagedView.DISABLE_ALL_APPS && isWorkspaceOrFolderApplication(d)) {
ShortcutInfo shortcut = (ShortcutInfo) d.dragInfo;
- if (shortcut.intent != null && shortcut.intent.getComponent() != null) {
- Set<String> categories = shortcut.intent.getCategories();
- boolean includesLauncherCategory = false;
- if (categories != null) {
- for (String category : categories) {
- if (category.equals(Intent.CATEGORY_LAUNCHER)) {
- includesLauncherCategory = true;
- break;
- }
- }
- }
- return includesLauncherCategory;
- }
+ // Only allow manifest shortcuts to initiate an un-install.
+ return !InstallShortcutReceiver.isValidShortcutLaunchIntent(shortcut.intent);
}
return false;
}