summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher2/DeleteDropTarget.java
diff options
context:
space:
mode:
authorWinson Chung <winsonc@google.com>2012-04-27 15:12:38 -0700
committerWinson Chung <winsonc@google.com>2012-04-27 15:15:11 -0700
commit11a4937fbff0dbc50fb022513dc3b6c643154445 (patch)
treea602fc06eae7006b840fc84c47c1497f15a6619c /src/com/android/launcher2/DeleteDropTarget.java
parent9cfcb39bffaffe2123cc6e6a39b4e32ee440fda5 (diff)
downloadandroid_packages_apps_Trebuchet-11a4937fbff0dbc50fb022513dc3b6c643154445.tar.gz
android_packages_apps_Trebuchet-11a4937fbff0dbc50fb022513dc3b6c643154445.tar.bz2
android_packages_apps_Trebuchet-11a4937fbff0dbc50fb022513dc3b6c643154445.zip
Fixing issue where shortcuts and widgets were not being removed when the package was uninstalled (Bug 2657997, Bug 6335843)
- Also fixes issue if we are dragging a shortcut/widget and it is removed. - Also exposes App Info for shortcuts and widgets Change-Id: I3bd5056f50f20e8b277dde6456df26eac815bcde
Diffstat (limited to 'src/com/android/launcher2/DeleteDropTarget.java')
-rw-r--r--src/com/android/launcher2/DeleteDropTarget.java12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/com/android/launcher2/DeleteDropTarget.java b/src/com/android/launcher2/DeleteDropTarget.java
index d8ea6ef5c..eb831f6e9 100644
--- a/src/com/android/launcher2/DeleteDropTarget.java
+++ b/src/com/android/launcher2/DeleteDropTarget.java
@@ -91,7 +91,17 @@ public class DeleteDropTarget extends ButtonDropTarget {
return (source instanceof AppsCustomizePagedView) && (info instanceof ApplicationInfo);
}
private boolean isAllAppsWidget(DragSource source, Object info) {
- return (source instanceof AppsCustomizePagedView) && (info instanceof PendingAddWidgetInfo);
+ if (source instanceof AppsCustomizePagedView) {
+ if (info instanceof PendingAddItemInfo) {
+ PendingAddItemInfo addInfo = (PendingAddItemInfo) info;
+ switch (addInfo.itemType) {
+ case LauncherSettings.Favorites.ITEM_TYPE_SHORTCUT:
+ case LauncherSettings.Favorites.ITEM_TYPE_APPWIDGET:
+ return true;
+ }
+ }
+ }
+ return false;
}
private boolean isDragSourceWorkspaceOrFolder(DragObject d) {
return (d.dragSource instanceof Workspace) || (d.dragSource instanceof Folder);