From 29fcd9a6365ada87e9010d282977fa381b43529d Mon Sep 17 00:00:00 2001 From: Jagrut Desai Date: Thu, 4 May 2023 10:50:38 -0700 Subject: [PATCH] Taskbar All Apps Icon Shortcuts Popup Accesiiblity Before we were only applying the icon.clearAccessibilityFocus() only on normal popup and not material u popups, since the flag is turned on for udc, we can move it outside. There seems to be a bug associated with either nested abstract floating views or the accessibility service where upon opening a nested abstract floating view from another the icon get the focus. This change make the bug littl less visible to use but users will still see this bug if they open the shortcut pop agian withought closing taskbar all apps. The accessibility delegate was always null when using the TaskbarOverlayContext, now we use TaskbarActivityContext Delegate when in TaskbarOverlayContext. Test: Manual Bug: 280657266 Flag: not needed Change-Id: I631e3aa6e54748c4c8ea2ac7daf5473b198e47d6 --- .../android/launcher3/taskbar/TaskbarPopupController.java | 2 +- .../launcher3/taskbar/overlay/TaskbarOverlayContext.java | 5 +++++ src/com/android/launcher3/folder/FolderIcon.java | 1 - src/com/android/launcher3/popup/PopupContainerWithArrow.java | 2 +- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarPopupController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarPopupController.java index 5abeac7654..a442849e02 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarPopupController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarPopupController.java @@ -176,9 +176,9 @@ public class TaskbarPopupController implements TaskbarControllers.LoggableTaskba deepShortcutCount, mPopupDataProvider.getNotificationKeysForItem(item), systemShortcuts); - icon.clearAccessibilityFocus(); } + icon.clearAccessibilityFocus(); container.addOnAttachStateChangeListener( new PopupLiveUpdateHandler(context, container) { @Override diff --git a/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayContext.java b/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayContext.java index 66d591889b..fd22457eae 100644 --- a/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayContext.java +++ b/quickstep/src/com/android/launcher3/taskbar/overlay/TaskbarOverlayContext.java @@ -85,6 +85,11 @@ public class TaskbarOverlayContext extends BaseTaskbarContext { return mOverlayController.getLauncherDeviceProfile(); } + @Override + public View.AccessibilityDelegate getAccessibilityDelegate() { + return mTaskbarContext.getAccessibilityDelegate(); + } + @Override public TaskbarDragController getDragController() { return mDragController; diff --git a/src/com/android/launcher3/folder/FolderIcon.java b/src/com/android/launcher3/folder/FolderIcon.java index 48239ae06d..2c1100f86e 100644 --- a/src/com/android/launcher3/folder/FolderIcon.java +++ b/src/com/android/launcher3/folder/FolderIcon.java @@ -74,7 +74,6 @@ import com.android.launcher3.model.data.FolderInfo.LabelState; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.WorkspaceItemFactory; import com.android.launcher3.model.data.WorkspaceItemInfo; -import com.android.launcher3.touch.ItemClickHandler; import com.android.launcher3.util.Executors; import com.android.launcher3.util.MultiTranslateDelegate; import com.android.launcher3.util.Thunk; diff --git a/src/com/android/launcher3/popup/PopupContainerWithArrow.java b/src/com/android/launcher3/popup/PopupContainerWithArrow.java index bc492fd728..8274789ef5 100644 --- a/src/com/android/launcher3/popup/PopupContainerWithArrow.java +++ b/src/com/android/launcher3/popup/PopupContainerWithArrow.java @@ -241,8 +241,8 @@ public class PopupContainerWithArrow deepShortcutCount, popupDataProvider.getNotificationKeysForItem(item), systemShortcuts); - launcher.tryClearAccessibilityFocus(icon); } + launcher.tryClearAccessibilityFocus(icon); launcher.refreshAndBindWidgetsForPackageUser(PackageUserKey.fromItemInfo(item)); container.requestFocus(); return container;