This is a proposal to add braille cursor routing to ChromeVox Next.
Background
Modern braille displays contain a row of routing buttons above each braille cell. These routing buttons can click or in the case of text fields, route cursors to a specific cell.
Implementation
ChromeVox bubbles up a routing key from Brltty and this gets mapped into a specific character within a spannable. The spannable is also associated with a node.
Chrome's automation api contains an action to
|setSelection|
to this specific character.
This needs to take into account any panning (when a braille display moves forward one window). For example, on a 40 cell display that is panned once to the right, any routing keys need to be offset by 40.
Risks
This feature depends on the work to stablize Blink selections. For example, some calls to
node.setSelection(startIndex, endIndex)
results in unexpected or no selections depending on the specific html snippet under consideration.
Comment 1 by dtseng@chromium.org
, Jun 28 2017