Open zepumph opened 3 years ago
This is a quarterly goal right now, raising priority
In scenery/doc/accessibility.html, I made it to "PhET Specific Information" I think that section should be completely moved out into the "how to add accessible interactive description to a sim" doc.
Summary of work thus far:
interactive-description-technical-guide.md
Still TODO:
We are now ready for a review. @jessegreenberg please take a look first through the scenery accessibility documentation. Likely this needs larger work because it only talks about the PDOM as a feature, but it seems like a good start for now.
Next look at the Technical Guide. As thorough of a read through as you feel you have time for would be very helpful to progress project-wide understanding of ID as a feature.
Thanks!
This is all really great @zepumph, nice work. Here are the notes I took that may be worth considering. Starting with accessibility.html since reading that is a prerequisite for the technical guide.
The basic example shows one DOM element representing a Node in the PDOM, but ParallelDOM.js supports a richer HTML structure. Each Node can have multiple DOM elements. To be represented in the PDOM, the Node must have a primary element specified with
tagName
. It can optionally also have a label element specified withlabelTagName
, a descriptions element specified withdescriptionTagName
and a structural container element specified withcontainerTagName
.
... then show example?
I am curious about the relationship between accessibility.html and the technical guide, do you think they should be combined? I noticed some slight overlap between the two. For example, the section on adding an input listener in the technical guide seemed like it might fit in an accessibility.html example.
I think that this is a really good point. My hope would be that the two documents have very distinctive differences. I want the scenery doc to be just about implementing the features, and the technical guide to be used as a "best practices" document. It is likely that they both still need a fair amount of work to get there.
Other review comments have been done.
I made it through review comments, but I'm still unsure about how much more I can do to further divide the two documents up. I would like to do much more! It may require some design time for me to sit down and think about a structure for both.
I made a change related to this to organize a11y docs so that other pages can be added. Under scenery/doc there is a new accessibility folder, and it now has "accessibility.html" and "voicing.html", and others can be added in the future.
In https://github.com/phetsims/scenery/issues/1241 @pixelzoom said
Finally... If you plan to writeup any developer instructions for hotkeys, it would be good to highlight the global nature of globalKeyStateTracker listeners, the importance of checking pdomDisplayed, and the importance of expression ordering for the if statement that short-circuits handlers. I don't know if such a doc is planned, so I'll leave that it up to @jessegreenberg whether/how to address documentation.
A section about global hotkeys would be great to add to this document so noting this here as part of this issue.
@jessegreenberg do you still want to add a global hotkey section to the doc?
Maybe global hotkeys should be defined in a source code file? External documentation will probably get stale.
It would also be bonus if something could error loudly if you try to use hotkey that's already used globally.
Interactive Description and other features developed by the a11y team are beginning to get adopted by the team in general greenhouse gas and eating, exercise and energy are both sims coming up this year that will have interactive description in them.
The first place to start is to make sure our documentation about this all is up to date. I will take a first pass as a quarterly goal. This includes: