diff options
Diffstat (limited to 'src/com/android/launcher2/DragController.java')
-rw-r--r-- | src/com/android/launcher2/DragController.java | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/com/android/launcher2/DragController.java b/src/com/android/launcher2/DragController.java index 78afe5704..d15cb6e06 100644 --- a/src/com/android/launcher2/DragController.java +++ b/src/com/android/launcher2/DragController.java @@ -328,18 +328,19 @@ public class DragController { } endDrag(); } - public void onAppsRemoved(ArrayList<String> packageNames, Context context) { + public void onAppsRemoved(ArrayList<ApplicationInfo> appInfos, Context context) { // Cancel the current drag if we are removing an app that we are dragging if (mDragObject != null) { Object rawDragInfo = mDragObject.dragInfo; if (rawDragInfo instanceof ShortcutInfo) { ShortcutInfo dragInfo = (ShortcutInfo) rawDragInfo; - for (String pn : packageNames) { + for (ApplicationInfo info : appInfos) { // Added null checks to prevent NPE we've seen in the wild if (dragInfo != null && dragInfo.intent != null) { - boolean isSamePackage = dragInfo.getPackageName().equals(pn); - if (isSamePackage) { + boolean isSameComponent = + dragInfo.intent.getComponent().equals(info.componentName); + if (isSameComponent) { cancelDrag(); return; } |