Support clearing accessibility focus API

RESOLVED FIXED in Firefox 66

Status

()

enhancement
RESOLVED FIXED
5 months ago
5 months ago

People

(Reporter: eeejay, Assigned: eeejay)

Tracking

unspecified
mozilla66
All
Android
Points:
---

Firefox Tracking Flags

(firefox66 fixed)

Details

Attachments

(1 attachment)

Accessibility services in Android rely an accessible cache that refreshes certain nodes on events[1]. We need to correctly dispatch an a11y focus cleared event if ACTION_CLEAR_ACCESSIBILITY_FOCUS is explicitly called on that node.

Android's root view knows to clear accessibility focus[2] on the previously focused node when a new node is in focus, so we shouldn't be doing that ourselves.

We also need to dispatch the cleared event each time, even if the node does not currently have focus. This is to support out-of-sync caches and appease them with an event.

  1. https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/view/accessibility/AccessibilityCache.java
  2. https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/view/ViewRootImpl.java#3731

Comment 2

5 months ago
Pushed by eisaacson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a7f3a2c57318
Clear accessibility focus correctly. r=yzen

Comment 3

5 months ago
bugherder
Status: NEW → RESOLVED
Closed: 5 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
You need to log in before you can comment on or make changes to this bug.