Removing "accessibility drag" action for shortcuts in menu
It's not supported there and causes Launcher to crash
Bug: 116023881
Test: Manual
Change-Id: Ib8a99ffeed41c3c3b70dec6bab7c5330a0412c66
diff --git a/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java b/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java
index 84edb3d..45bade8 100644
--- a/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java
+++ b/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java
@@ -127,9 +127,7 @@
}
// Do not add move actions for keyboard request as this uses virtual nodes.
- if (!fromKeyboard && ((item instanceof ShortcutInfo)
- || (item instanceof LauncherAppWidgetInfo)
- || (item instanceof FolderInfo))) {
+ if (!fromKeyboard && itemSupportsAccessibleDrag(item)) {
info.addAction(mActions.get(MOVE));
if (item.container >= 0) {
@@ -146,6 +144,15 @@
}
}
+ private boolean itemSupportsAccessibleDrag(ItemInfo item) {
+ if (item instanceof ShortcutInfo) {
+ // Support the action unless the item is in a context menu.
+ return item.screenId >= 0;
+ }
+ return (item instanceof LauncherAppWidgetInfo)
+ || (item instanceof FolderInfo);
+ }
+
@Override
public boolean performAccessibilityAction(View host, int action, Bundle args) {
if ((host.getTag() instanceof ItemInfo)