diff --git a/src/com/android/launcher3/DeleteDropTarget.java b/src/com/android/launcher3/DeleteDropTarget.java index 58789fd8f2..425f277eea 100644 --- a/src/com/android/launcher3/DeleteDropTarget.java +++ b/src/com/android/launcher3/DeleteDropTarget.java @@ -130,7 +130,6 @@ public class DeleteDropTarget extends ButtonDropTarget { public void completeDrop(DragObject d) { ItemInfo item = d.dragInfo; if (canRemove(item)) { - onAccessibilityDrop(null, item); mDropTargetHandler.onDeleteComplete(item); } } diff --git a/src/com/android/launcher3/DropTargetHandler.kt b/src/com/android/launcher3/DropTargetHandler.kt index f1029b1f2b..4d3fe526a9 100644 --- a/src/com/android/launcher3/DropTargetHandler.kt +++ b/src/com/android/launcher3/DropTargetHandler.kt @@ -65,6 +65,7 @@ class DropTargetHandler(launcher: Launcher) { } fun onDeleteComplete(item: ItemInfo) { + removeItemAndStripEmptyScreens(null /* view */, item) var pageItem: ItemInfo = item if (item.container <= 0) { val v = mLauncher.workspace.getHomescreenIconByItemId(item.container) @@ -90,11 +91,7 @@ class DropTargetHandler(launcher: Launcher) { } fun onAccessibilityDelete(view: View?, item: ItemInfo, announcement: CharSequence) { - // Remove the item from launcher and the db, we can ignore the containerInfo in this call - // because we already remove the drag view from the folder (if the drag originated from - // a folder) in Folder.beginDrag() - mLauncher.removeItem(view, item, true /* deleteFromDb */, "removed by accessibility drop") - mLauncher.workspace.stripEmptyScreens() + removeItemAndStripEmptyScreens(view, item) mLauncher.dragLayer.announceForAccessibility(announcement) } @@ -105,4 +102,12 @@ class DropTargetHandler(launcher: Launcher) { fun onClick(buttonDropTarget: ButtonDropTarget) { mLauncher.accessibilityDelegate.handleAccessibleDrop(buttonDropTarget, null, null) } + + private fun removeItemAndStripEmptyScreens(view: View?, item: ItemInfo) { + // Remove the item from launcher and the db, we can ignore the containerInfo in this call + // because we already remove the drag view from the folder (if the drag originated from + // a folder) in Folder.beginDrag() + mLauncher.removeItem(view, item, true /* deleteFromDb */, "removed by accessibility drop") + mLauncher.workspace.stripEmptyScreens() + } }