[A11y] Expose important details of AtkObjects of ATK_ROLE_UNKNOWN as separate object attributes
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Jokosher |
In Progress
|
Medium
|
Michael Sheldon | ||
gnome-orca |
Unknown
|
Wishlist
|
Bug Description
The timeline and each audio event are ATK_ROLE_UNKNOWN. In addition, Jokosher exposes important details about the timeline and each audio event through the AtkObject's accessible name.
Given the finite number of AtkRole's, the role being used is appropriate. And providing a detailed accessible name makes it possible for an AT such as Orca to automatically present all of the relevant information associated with a newly-focused object automatically. (Thanks!)
There are times, however, where Orca needs to know if an accessible event came from the timeline or an audio event. Because these are both of ATK_ROLE_UNKNOWN, Orca must either guess based on the AtkObject's position within in the accessible hierarchy (not performant, not reliable) and/or try to parse the accessible name (which can be problematic due to localization). Similarly, Orca might want to present just one detail about one of these objects (e.g. the new start time of an event which was just moved, the new duration of an event which was just trimmed). Currently, the only way to provide this information is, again, to attempt to parse the accessible name. Alternatively, Orca could just provide the full accessible name, but most users will find that behavior too "chatty."
Therefore, it would be very helpful if these details could also be exposed as object attributes. The attribute name can be whatever you'd like, as can the attribute value. (There's really no standardization on this front.) And neither the name, nor the value should be localized as they are intended for use by the AT itself.
Details I believe would be of interest (name is not a recommendation per se; just something I came up with for this bug):
Name Example Value(s)
----------- ----------------
"role" "event", "timeline"
"start-time" "1.00"
"stop-time"* "17.24"
"duration"* "16.24"
"unit"** "seconds"
etc.***
* Given one, an AT could of course calculate the other if need be.
** Assuming it might not necessarily be seconds
*** Feel free to add others. :-) For instance, not being an audio editing expert, I have no clue if one would ever want to know the ticks separate from the beats separate from the bars. If one would, please expose each as an attribute; if one would not, please do not -- in which case Orca will present the accessible name when the user modifies the position in the timeline.
Changed in gnome-orca: | |
status: | Unknown → In Progress |
Changed in jokosher: | |
assignee: | nobody → Michael Sheldon (michael-sheldon) |
importance: | Undecided → Medium |
status: | New → In Progress |
Changed in gnome-orca: | |
importance: | Unknown → Wishlist |
Changed in gnome-orca: | |
status: | In Progress → Unknown |