summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher2/InfoDropTarget.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/InfoDropTarget.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/InfoDropTarget.java')
-rw-r--r--src/com/android/launcher2/InfoDropTarget.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/com/android/launcher2/InfoDropTarget.java b/src/com/android/launcher2/InfoDropTarget.java
index 2e0b5c827..134f4cb56 100644
--- a/src/com/android/launcher2/InfoDropTarget.java
+++ b/src/com/android/launcher2/InfoDropTarget.java
@@ -16,6 +16,7 @@
package com.android.launcher2;
+import android.appwidget.AppWidgetProviderInfo;
import android.content.ComponentName;
import android.content.Context;
import android.content.res.ColorStateList;
@@ -62,8 +63,8 @@ public class InfoDropTarget extends ButtonDropTarget {
}
}
- private boolean isAllAppsApplication(DragSource source, Object info) {
- return (source instanceof AppsCustomizePagedView) && (info instanceof ApplicationInfo);
+ private boolean isFromAllApps(DragSource source) {
+ return (source instanceof AppsCustomizePagedView);
}
@Override
@@ -76,6 +77,8 @@ public class InfoDropTarget extends ButtonDropTarget {
componentName = ((ApplicationInfo) d.dragInfo).componentName;
} else if (d.dragInfo instanceof ShortcutInfo) {
componentName = ((ShortcutInfo) d.dragInfo).intent.getComponent();
+ } else if (d.dragInfo instanceof PendingAddItemInfo) {
+ componentName = ((PendingAddItemInfo) d.dragInfo).componentName;
}
if (componentName != null) {
mLauncher.startApplicationDetailsActivity(componentName);
@@ -90,8 +93,8 @@ public class InfoDropTarget extends ButtonDropTarget {
public void onDragStart(DragSource source, Object info, int dragAction) {
boolean isVisible = true;
- // If we are dragging a widget or shortcut, hide the info target
- if (!isAllAppsApplication(source, info)) {
+ // Hide this button unless we are dragging something from AllApps
+ if (!isFromAllApps(source)) {
isVisible = false;
}