summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2016-08-03 10:31:11 -0700
committerSunny Goyal <sunnygoyal@google.com>2016-08-03 10:32:23 -0700
commit7d552c8b18cfad9f32fb5028c53960a9f19dc0a8 (patch)
tree550aa7eea78e4282c96b6c3bf03e6bdedb89f1f3 /src
parente6fe1b59470b653f0275596cb8a211367dd61654 (diff)
downloadandroid_packages_apps_Trebuchet-7d552c8b18cfad9f32fb5028c53960a9f19dc0a8.tar.gz
android_packages_apps_Trebuchet-7d552c8b18cfad9f32fb5028c53960a9f19dc0a8.tar.bz2
android_packages_apps_Trebuchet-7d552c8b18cfad9f32fb5028c53960a9f19dc0a8.zip
Disabling accessibility focus on all children when shortcuts is open
Bug: 30611791 Change-Id: Ibb1dec13b62add3799c215fea98e87e3fa89638d
Diffstat (limited to 'src')
-rw-r--r--src/com/android/launcher3/dragndrop/DragLayer.java32
1 files changed, 21 insertions, 11 deletions
diff --git a/src/com/android/launcher3/dragndrop/DragLayer.java b/src/com/android/launcher3/dragndrop/DragLayer.java
index 28b6f3ead..3300b7699 100644
--- a/src/com/android/launcher3/dragndrop/DragLayer.java
+++ b/src/com/android/launcher3/dragndrop/DragLayer.java
@@ -374,22 +374,32 @@ public class DragLayer extends InsettableFrameLayout {
@Override
public boolean onRequestSendAccessibilityEvent(View child, AccessibilityEvent event) {
- Folder currentFolder = mLauncher.getWorkspace().getOpenFolder();
- if (currentFolder != null) {
- if (child == currentFolder) {
- return super.onRequestSendAccessibilityEvent(child, event);
- }
+ // Shortcuts can appear above folder
+ View topView = mLauncher.getOpenShortcutsContainer();
+ if (topView != null) {
+ return handleTopViewSendAccessibilityEvent(topView, child, event);
+ }
- if (isInAccessibleDrag() && child instanceof DropTargetBar) {
- return super.onRequestSendAccessibilityEvent(child, event);
- }
- // Skip propagating onRequestSendAccessibilityEvent all for other children
- // when a folder is open
- return false;
+ topView = mLauncher.getWorkspace().getOpenFolder();
+ if (topView != null) {
+ return handleTopViewSendAccessibilityEvent(topView, child, event);
}
return super.onRequestSendAccessibilityEvent(child, event);
}
+ private boolean handleTopViewSendAccessibilityEvent(
+ View topView, View child, AccessibilityEvent event) {
+ if (child == topView) {
+ return super.onRequestSendAccessibilityEvent(child, event);
+ }
+ if (isInAccessibleDrag() && child instanceof DropTargetBar) {
+ return super.onRequestSendAccessibilityEvent(child, event);
+ }
+ // Skip propagating onRequestSendAccessibilityEvent for all other children
+ // which are not topView
+ return false;
+ }
+
@Override
public void addChildrenForAccessibility(ArrayList<View> childrenForAccessibility) {
Folder currentFolder = mLauncher.getWorkspace().getOpenFolder();