-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
A11y semantics for home screen and bottom navigation bar #45
Comments
@melbanyard, I made a few commits the final one being: I tested this version in Voice Over and the regions, headings, labels, button descriptions, and sim screen roles are all recognized correctly. To see and hear the regions and region names, I had to use the Voice Over rotor tool. Features added to this version are:
Atom Screen
The DRAFT text is just that. I eagerly await @melbanyard's descriptions. Other ideas:
With this structure, the interactive elements on the Home Screen and in the navigation bar, i.e., the buttons, are accessed with the Tab key (and of course the down arrow reading cursor key). The menu items in the PhET Menu, once popped up are clearly identified as menu items in a menu and would follow the interaction pattern of a menu. |
Hi @terracoda (& @emily-phet) Here are a couple passes I took for the sim descriptions. I'd love to hear your feedback so i can see what needs to be tweaked in order for us to move in the right direction. Atom: Symbol: Game: |
@melbanyard, nice. Play, build, experiment, explore, and test are all good verbs. Verbs are important as they engage the user! One thing to keep in mind is the other stuff that the screen reader says. You can't be exactly sure as it varies, but the screen reader will read out the label text and the the type of control/element it is. In this case, a native "button" with a possible role description replacement to "sim screen". We can try to be even shorter if we think about what the screen reader provides by default. I don't think we need the word simulation. The user gets that from the page title, and plus all the screens together make up a single simulation called "Build and Atom." "Sim screen" could be provided in place if "button" in the ideal case, so then we want to still with the essentials of the learning goals in the screen. For example, given option 2 for the first screen, it might sound like this:
Or in the ideal case with the correct reading of the
I think the pedagogical focus in Screen 1 learning about what makes up an atom. For screen 2, it is assumed students are masters of screen 1 and they now turn their focus the periodic symbol that represent an atom, and how it changes as the atom changes. In screen 3, it is an assessment game, so "Testing knowledge" is definitely key there. Keeping your descriptions in mind, the main pedagogical goals, and trying to keep it under "7" words... here's what I came up with:
What do you think?
|
Chiming in @terracoda latest iteration of @melbanyard descriptions:
(notes:
I like your idea for the short intro paragraph. With the same concern about potential overuse of play, I'm suggesting we replace "play" with "explore" here. (man I wish there were more playful synonyms for "explore". :) Come explore with Build an Atom. It has three screens. |
@emily-phet, I like "investigate", and totally agree with not over using "play". I wanted to use "explore" for the first one, but was trying to avoid 2 "explores" in a row in the screen list. I also like the repetition of "atom" in the second option as they are still exploring the atom, though the focus has switched to the "atomic symbol". To summarize: Intro para: Screen list buttons with accompanying help text:
Other potential verbs to think about for sim use may be:
|
Commit 75117ea adds the new content and changes the un-ordered sim screen list to an ordered list. |
@terracoda I am wondering if we use "Sim Screen" as the aria-roledescription here, will users know to activate it like a button? |
@jessegreenberg, great question, and I am confident the answer is "Yes"! However, we do need to fully test how things are handled by different AT. I'm not sure what NVDA and JAWS do, but VoiceOver provides the same help text instructions as it would for a button, but replaces the word, "button" with "Sim Screen". The element still has the role, I think it would be useful to test that screen reader hot keys that help identify buttons, such as the B key in JAWS would still identify the control as a button. |
Sounds good, thanks! |
Sorry - fell off due to work obligations over the past few days. I'd like to have some revised descriptions for this Friday's meeting, so we can discuss them live. Will take all this feedback into account. Thanks @terracoda @emily-phet @jessegreenberg :) |
No worries @melbanyard. Have a look at Emily's suggestions, I've implemented them in the HTML mock-ups to make it easy to review. |
Will do @terracoda ! Thanks :) |
PhET_KeyboardNav_BuildanAtom_v3.pdf @terracoda @emily-phet hello! Please take a look at how I've implemented the descriptions discussed above into the first screen of build an atom. :) |
PhET_KeyboardNav_BuildanAtom_v4.pdf @terracoda @emily-phet Did a quick pass this morning on the home screen mockups to thicken and adjust the highlight interaction. |
@melbanyard, the items look nice with the tighter focus highlight. |
@terracoda @emily-phet I took some time to carve off another little bit of the nav for Build an Atom, you can view it on the attached file. One thought I had - is it possible to remove the home button option on the bottom nav altogether? It seems redundant, since all the options presented to users on the home/welcome page are already in the bottom nav. I can't remember if I've mentioned this before. |
@melbanyard, thanks Mel! |
@melbanyard, I like the home screen focus highlights. The screen items ones need to be a bit tighter. My idea for the sim screen buttons was to have the descriptive help text read out automatically for the buttons on the home screen, but available "on-demand" for the sim screen buttons in the bottom navbar once a screen is loaded. By available "on-demand", I mean the text is still there, but only accessible with the user uses the reading cursor keys to read it out. What would be read out on a screen switch would be the label text for the sim screen buttons and the role of the element (tab, button, menuitem), or the description of the button using aria-rolesdescription (Sim Screen, or Sim Screen button). For example, the if the button are marked up in an ordered list, and the buttons are given
And if you read through the items with the cursor keys you would get more information:
And then if the user explores further on any one o the items, they would get the more explanatory help text for the screen. The home screen if marked-up properly, I think the a VO user would get the label, the role description and the help text together when navigating with the Tab key. My Home screen html mock-up is not currently working like that, though. |
Just sharing @melbanyard 's latest version here in the thread. |
Thanks @terracoda and @melbanyard! Does the pink highlight in the first slide mean that the whole screen is in the focus order? |
That's a good question, @jessegreenberg! I was going to ask @melbanyard about that, too. Normally, is keyboard focus set on page load? Or is it just that the virtual cursor is placed at the top of the page, and no keyboard focus is set? |
At the moment, we are just letting the AT do what it wants with focus so the virtual cursor is just placed at the top. |
OK, good. That makes sense to me. It's just a bit confusing on the home screen, since one sim is already visually highlighted to encourage going there first, but it does not actually have keyboard focus. Not sure if having a page highlight would be more clear for visual keyboard users. Let's see what @melbanyard and @emily-phet think. I don't think we need that first big page highlight. |
Hi @terracoda & @jessegreenberg So I believe that first page in the PDF should have been removed prior to uploading (my fault). Earlier in our process Taliesin mentioned that there wouldnt be any focussed required when initially opening the page. So Jesse is right in stating that we're going to let the AT do what it wants when the page is first opened. |
@terracoda Would you be able to share the content navigation of the sim in the google doc you mentioned in an earlier email to me? |
@melbanyard, I have shared the folder with you and sent you an email. |
Reading on using
Summary |
@jessegreenberg and @melbanyard, I edited the first comment to include links to a generic template version. The HTMLl is valid. The structure contains
I think this is a solid semantic approach worthy for testing within a sim. |
@terracoda The comments are great on these articles, and after reading them I have to agree that it sounds like lists will be the best way to go. Is there any way you'd like me to apply these changes to the sim? Or can they be implemented right into a prototype at this point, rather than my PDFs. |
@jessegreenberg, @zepumph, I tested the Home Screen and Navigation Templates noted in comment #45 (comment) and here is what I noticed:
I can review with screen reader user next week, too. |
Thanks @terracoda Ill give a listen with NVDA and JAWS. |
Sounds great to me, pretty straight forward! @terracoda @melbanyard, just a couple questions about the numbers:
|
That would require JavaScript, the browser/AT doesn't include keyboard navigation from ARIA alone. |
@melbanyard, sorry I missed your comment https://cuboulder.zoom.us/j/221920770. I think your mock-ups are fine. They match pretty closely what with go under the hood. |
@jessegreenberg, the numbers are just place holder content in the templates. Theere will be no numbers on the actual labels for the screen buttons. The screen buttons on sims have their own names :-) See Build an Atom as an example. The list items are number naturally through their structure, but not the buttons. Make sense? |
Thanks @terracoda, makes sense. And what about things like
Ok if we use '3' instead of 'three'? It would be quite a bit easier if we don't have to map numbers to translatable strings. |
@jessegreenberg, I hadn't thought about translation. '3' should work instead of 'three' for number of screens. |
Great, thanks! Lets give it a shot in joist! |
@terracoda @melbanyard thank you guys for the design work here. Implementation issues for the HomeScreen and Nav bar are listed above as separate issues. Closing this long but productive issue. |
@emily-phet and @melbanyard met yesterday to discuss the related interaction between the home screen and the bottom navigation bar in multi-screen sims. We need to think about the home screen, multi-screen sims, and the bottom navigation bar together to see how to optimize the interaction for multiple screen sims.
I mocked up two not so clean html pages representing the Home screen and the Atom screen for Build an Atom. The Atom screen is using the the
aria toolbar role
for the bottom bar and not a theregion role
as discussed earlier.Using Build and Atom as an Example:
Unfortunately, the sample toolbar.js did not work for me out of the box, and the toolbar.css is not loading. I will need help to get a real sample toolbar interaction implemented.
You have to tab through the buttons in the examples. There is no special tab index management working.
This issue is related to issue #25.
Using a template for an example
The text was updated successfully, but these errors were encountered: