From 2949fb5b16a07259e221c5c04470e90c8afb4ea8 Mon Sep 17 00:00:00 2001 From: Winson Date: Thu, 24 Sep 2015 09:56:11 -0700 Subject: Fixing talk-back folder icon removal regression. Change-Id: I0b7fff645828d5198500973f1c9ea74f406a1a43 --- src/com/android/launcher3/DeleteDropTarget.java | 2 +- src/com/android/launcher3/FocusHelper.java | 4 ++-- src/com/android/launcher3/Folder.java | 2 +- src/com/android/launcher3/Launcher.java | 9 ++++----- src/com/android/launcher3/Workspace.java | 4 ++-- 5 files changed, 10 insertions(+), 11 deletions(-) (limited to 'src/com/android') diff --git a/src/com/android/launcher3/DeleteDropTarget.java b/src/com/android/launcher3/DeleteDropTarget.java index c3eea2f08..5b1e84efb 100644 --- a/src/com/android/launcher3/DeleteDropTarget.java +++ b/src/com/android/launcher3/DeleteDropTarget.java @@ -73,7 +73,7 @@ public class DeleteDropTarget extends ButtonDropTarget { // 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() - launcher.removeItem(view, null, item, true /* deleteFromDb */); + launcher.removeItem(view, item, true /* deleteFromDb */); launcher.getWorkspace().stripEmptyScreens(); return true; } diff --git a/src/com/android/launcher3/FocusHelper.java b/src/com/android/launcher3/FocusHelper.java index 5c91cc0f0..6872d5b0a 100644 --- a/src/com/android/launcher3/FocusHelper.java +++ b/src/com/android/launcher3/FocusHelper.java @@ -247,7 +247,7 @@ public class FocusHelper { } } else if (isDeleteKeyChord(e)) { matrix = FocusLogic.createSparseMatrix(iconLayout); - launcher.removeItem(v, null, itemInfo, true /* deleteFromDb */); + launcher.removeItem(v, itemInfo, true /* deleteFromDb */); } else { // For other KEYCODE_DPAD_LEFT and KEYCODE_DPAD_RIGHT navigation, do not use the // matrix extended with hotseat. @@ -341,7 +341,7 @@ public class FocusHelper { } } else if (isDeleteKeyChord(e)) { matrix = FocusLogic.createSparseMatrix(iconLayout); - launcher.removeItem(v, null, itemInfo, true /* deleteFromDb */); + launcher.removeItem(v, itemInfo, true /* deleteFromDb */); } else { matrix = FocusLogic.createSparseMatrix(iconLayout); } diff --git a/src/com/android/launcher3/Folder.java b/src/com/android/launcher3/Folder.java index d4e5d6d05..58efaaa9d 100644 --- a/src/com/android/launcher3/Folder.java +++ b/src/com/android/launcher3/Folder.java @@ -1115,7 +1115,7 @@ public class Folder extends LinearLayout implements DragSource, View.OnClickList // Remove the folder if (getItemCount() <= 1) { - mLauncher.removeItem(mFolderIcon, null, mInfo, true /* deleteFromDb */); + mLauncher.removeItem(mFolderIcon, mInfo, true /* deleteFromDb */); if (mFolderIcon instanceof DropTarget) { mDragController.removeDropTarget((DropTarget) mFolderIcon); } diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index e320d4e98..84e6b997a 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -2419,16 +2419,15 @@ public class Launcher extends Activity * Unbinds the view for the specified item, and removes the item and all its children. * * @param v the view being removed. - * @param containerInfo the {@link FolderInfo} container of this view (can be null). * @param itemInfo the {@link ItemInfo} for this view. * @param deleteFromDb whether or not to delete this item from the db. */ - public boolean removeItem(View v, FolderInfo containerInfo, ItemInfo itemInfo, - boolean deleteFromDb) { + public boolean removeItem(View v, ItemInfo itemInfo, boolean deleteFromDb) { if (itemInfo instanceof ShortcutInfo) { // Remove the shortcut from the folder before removing it from launcher - if (containerInfo != null) { - containerInfo.remove((ShortcutInfo) itemInfo); + FolderInfo folderInfo = sFolders.get(itemInfo.container); + if (folderInfo != null) { + folderInfo.remove((ShortcutInfo) itemInfo); } else { mWorkspace.removeWorkspaceItem(v); } diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index 9c2d450e8..ee2382609 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -1120,7 +1120,7 @@ public class Workspace extends PagedView if (lahv != null && lahv.isReinflateRequired()) { // Remove and rebind the current widget (which was inflated in the wrong // orientation), but don't delete it from the database - mLauncher.removeItem(lahv, null, info, false /* deleteFromDb */); + mLauncher.removeItem(lahv, info, false /* deleteFromDb */); mLauncher.bindAppWidget(info); } } @@ -4525,7 +4525,7 @@ public class Workspace extends PagedView if (info.hostView instanceof PendingAppWidgetHostView) { // Remove and rebind the current widget, but don't delete it from the database PendingAppWidgetHostView view = (PendingAppWidgetHostView) info.hostView; - mLauncher.removeItem(view, null, info, false /* deleteFromDb */); + mLauncher.removeItem(view, info, false /* deleteFromDb */); mLauncher.bindAppWidget(info); } } -- cgit v1.2.3