-
Notifications
You must be signed in to change notification settings - Fork 8
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
Design of Popup Dialogue for Keyboard Nav Help #127
Comments
@arouinfar, I'm sure you can make it look better than my original mock-up :-) |
@emily-phet I can work on this later this afternoon (depending on how long it takes to get through the Google Drive migration) or Monday. @terracoda your mockup is a really helpful place to start. :) |
@emily-phet I've made a few (wireframe) iterations of the keyboard popup, which you can view in I prefer the last mockup in the file (pasted below). It groups the keys into categories, which I think will be a useful paradigm for other sims, as @terracoda's initial mockups have indicated. @emily-phet please let me know your thoughts. I can polish up the mockups a bit more once I get some general layout/content feedback. |
@arouinfar one of the tricky things with the JT sim is the circular motion of the appendages. Basically the ↑doesn't always move the hand/foot up visually. Consider the case where the leg is all the way back, pushing ↑ will actually make the foot look like it's going down. |
Excellent point @jobara. I struggled a bit with how to describe the motion because the hand and foot sometimes seem discrepant. I'm hesitant to describe anything as a "slider" (even though it simplifies the text to some extent) because it seems like a nitty-gritty implementation detail that doesn't need to be revealed to the user. @jessegreenberg has pointed out that the screen reader refers to the hand/foot as a slider, but not everyone using keyboard navigation would also be using a screen reader. I'm also wondering about the choice of home/end and page up/page down. These are Windows-specific keys. Within the sim, the Mac equivalents would be
Will Mac users be able to translate the keys themselves, or do we need to have a separate Mac help menu popup? I'm not overly confident about the former, because cmd+arrows can at times act like fn+arrows, depending on the context/application. |
What I've been calling up/down works nicely for the hand, but the foot is different as @jobara has pointed out. Here's an alternative: |
@arouinfar and @emily-phet, I made a quick sketch. Because of the issue @jobara mentioned I think we can avoid the confusion by simplifying and grouping the text (see the sketch). I think it's okay to not be too specific in wording - we've observed that users are quick to figure out which direction they want to go after the initial key press (even if the key press moves the arm/leg in a direction they weren't expecting). The way I see it, the home/end and pgup / pgdn keys aren't really important. They're convenient if you need them, but most cases users will be using up/down or left/right. Edit: To clarify my last point - I meant to ask whether it's worthwhile to even mention the Home/End, and PgUp/Dn keys. It's not critical to using the sim. Thoughts? |
@arouinfar and @jhung, the home/end and pgUp/Dn keys are not critical. They are features we just get for free with the slider. @arouinfar you make an interesting point about key name. I suppose it's keyboard dependent as I still use an Apple keyboard that has home/end and pageUp/Dn keys, although this is becoming more and more uncommon. I wonder if there are PC laptops with similar key combination requirements too. However, the user may know or easily discover how to do those actions. |
@jhung thanks for the sketch! It's really helpful. @jobara I'll mock up a few more alternatives based on @jhung's sketch, both with and without the home/end and page up/down keys. I compared keyboards with a coworker who uses a small Dell laptop, and she also needs to use the fn + arrow keys. However, her arrow keys look something like this: |
@arouinfar, @jhung, @jobara, I also think Jon's approach is a nice one. I suggest the wording name the actual keys in the description, so it is clear for both visual and non-visual users. The actual images can then have blank alt text in the underlying HTML making them invisible to a screen reader user, thus making the reading experience more pleasant. For example: Could add "in opposite directions" for the arrow keys if you think that is helpful, but that should be obvious (implicit and intuitive) with arrow keys. Also as @jhung mentioned, no need for "closer to door" as the foot rubs forward and back on the rug and the hand moves more explicitly towards the metal doorknob. Also, I don't think the word "focus" is necessary. The student has to have focus on the control to operate it. |
Thanks for these suggestions @terracoda.
I agree that this should be obvious, though it could quickly be observed by visual users. However, would it be helpful to non-visual users to add "in opposite directions"? Here are a few mockups that combine @jhung's sketch with @terracoda's text suggestions. The first is a more verbose, and the second more minimal. I could make an argument for either. I'm also wondering if it's necessary to include instructions for the Tab and Shift+Tab commands. Aren't these standard in keyboard navigation? |
@arouinfar, yes Tab and Shift Tab very common keyboard operations. They would likely only not work if the app was not built correctly from the start. However, that said, this is an interactive sim, not a typically accessible application. Providing some instructions that standard key presses work may provide assurance to some users. In my interviews, participants did think aloud phrases like this:
And then they proceeded to press the Escape key and it worked as they had wondered out loud. I think it is ok to add some explicit general things. They can choose not to read it, especially when the document is well organized and easily navigable. Some sims will have more complicated help than others. An example from my early research on this was from a flickr app, their help dialog included a statement like,
Which could be nice at the very end, also under the "General operations" heading. Regarding the title - just noticed that - I prefer "Hot keys and Help". One participant I interviewed early on where the cue just said "Press H key for Help" commented something like
I notice your ??? question marks. We are using the "H key" for "Hot keys and Help" in BASE for a few reasons:
Once there is a visual button in the sim header/footer, a Hot Key for help may not be necessary. |
Thanks for the feedback @terracoda! I was using ??? as a placeholder, because @emily-phet's original post didn't specify the key for the help menu.
Sounds good. I think for a sim like BASE, we'll want to have some top-level categories for sim-specific things, and more general navigation. If we go the more minimal route, I think everything can be listed together, like so: |
@arouinfar looking good. Just a couple of adjustments. I would put periods at the end of each, so there are pauses at the end. I should have said "Escape key closes a dialog, like this one." And, to be consistent, I would refer to "this page" with the same language, so: "H key opens this dialog." It's a dialog not a menu :-) |
How about this @terracoda? If the verbiage and ordering looks good, I can start working on aesthetics. |
sounds a bit awkward. Sorry I didn't catch that before. I think,
sounds better. |
Thanks @terracoda! I will start working on a few layout/color options |
Looking great! @arouinfar I would suggest returning to earlier wording for the description of the arrow keys - "Left and Right arrow keys move the hand or the foot". I think "opposite directions" could be confusing. |
Thanks for the feedback @emily-phet! I will make the suggested changes to the descriptions, and work on a few mockups later this afternoon. |
@emily-phet, @arouinfar other possible words for "dialog" could be:
Just words to keep in the coffers. And the addition of "like this one," would be god in all cases. |
Thanks for these suggestions @terracoda. I think "pop-up" might be a good alternative to "dialog". I also like window, but I think it could get confused with the browser window. The good news is that once the dialog is implemented, it'll be really easy to make changes to the text. :) |
Maybe the same as the dialog, "Hot Keys and Help" or maybe just "Help"? |
Thanks @jobara I went with "Hot Keys and Help" for now. |
@jessegreenberg, @jobara, sorry for the late comment on this and sorry for my question about using the close button as being a little vague. What I was a little uneasy about after reading the article by Paul J. Adam was setting focus to a non-interactive element (i.e. the H1 of the dialog), which would be my first choce. This is why I suggested that we set focus to the only interactive element we have in this dialog, the close button. An interactive element was recommended by Paul J. Adam. In a 2014 article in [Smashing Magazine] (https://www.smashingmagazine.com/2014/09/making-modal-windows-better-for-everyone/), Scott O'Hara seems to set focus to the containing frame, and then on entering the frame the first element that is read is the H1. On pressing tab the focus goes to the first focusable element within the dialog, a form element. What I think we want for users in our case is:
I see three options:
My preference is actually option 2, but I was not sure, based on earlier discussion, if that was technically possible in our case. |
@jessegreenberg and @jobara, this ARIA Dialog Example from Athena ICT highlights (sorry, puts focus on) the H1 of the dialog. It works nicely in VO in Safari and in Chrome, BUT I can still navigate into the background page content without exiting the dialog...so the example is not a perfect one. |
@jessegreenberg, @mcking65 (Matt King) will be making a few dialog examples available soon. See the issue#103 over in ARIA-Practices 1.1 . Matt King also commented:
So based on this, I think we should go with option 2 in #127 (comment) And the close button can now actually be placed after of the content. Visually it should still be up in the right hand corner of the dialog. |
@jessegreenberg, based on earlier discussion in issue issue phetsims/a11y-research#12 and yesterday's A11y Meeting (March 14), I think the label for the button that opens the keyboard information has changed from:
TO
Also in issue @jessegreenberg, is the final version of the content clear? I think I should post a new summary over in phetsims/a11y-research#12. It looks like we summarized and then made another change. |
@jessegreenberg, here are the new dialog examples from the aria-practices group The examples are still undergoing a review, but they contain awesome design advice as well as working examples. The examples include dialogs with a small amount of content and a large amount of content. |
@jessegreenberg, fyi, while the examples in #127 (comment) are excellent, and have good design advice, they still have some focus management issues. |
@jessegreenberg for the "Hot Keys and Help" dialog, if i open it with the keyboard and press one of the arrow keys. I cannot use the esc key to close the dialog. Steps:
I tried this using Safari 10.0.3 on macOS 10.12.3 |
@jessegreenberg the esc key also exits out of full screen. This is not mentioned in the "Hot Keys and Help" dialog. Additionally this causes some interaction issues when interacting with dialogs while the sim is in full screen. Steps:
|
Thanks @jobara! Unfortunately, I can't reproduce this issue with Safari 9.0.1, OSX 10.9.5. Good catch! @terracoda @emily-phet @arouinfar should there a description in the Keyboard Help dialog that describes escape will also exit full screen mode?
I am using an older version of Safari and focus isn't lost when the sim exits full screen so I can still close the Dialog. But maybe the issue is that the dialog should get priority for closing over full screen mode. |
It seems that for security reasons, you can't prevent exiting full screen when pressing 'escape'. So we need to figure out why focus is leaving the dialog when full screen mode is turned off. |
@jessegreenberg and @jobara, I am losing focus all together after exiting full screen mode. I can't seem to tab to anything after exiting full screen mode. Hmm, very strange. @jessegreenberg can you actually tell where focus is going? |
Probably the body - @jobara do you happen to know? I might be able to get a macOS device soon to check, but I am not sure. |
We just tried this in Safari and Chrome in macOS Sierra 10.12.4 Beta, and we couldn't reproduce this bug. @jobara or @terracoda can we screen share sometime so I can observe this bug? |
I did not experience the problems in #127 (comment) or #127 (comment) using Chrome with macOS 10.12.4 (NOT beta) |
#127 (comment) I also just updated the machine to 10.12.4 (not beta) and could not reproduce the issue in Safari 10.1. |
@jessegreenberg I just upgraded to macOS 10.12.4 which comes with Safari 10.1. It seems the issue is gone now. I tried before upgrading and the issue was there. It seems that this was a Safari bug, that has now been addressed. |
Excellent, thanks very much @jobara. Is this still part still an issue?
|
@emily-phet @terracoda @arouinfar is this part of @jobara's comment in #127 (comment) something that should be addressed?
|
@jessegreenberg regarding ( #127 (comment) ) this also seems to have been fixed with the latest version of Safari. |
@jessegreenberg If you're asking if we should add to the Hot Keys and Help dialog something about esc exiting full screen mode, I don't think we need to do that. |
Thanks @jobara, thats great. Ok, great @emily-phet, thanks. In that case, can this issue be closed? |
@jessegreenberg I think this issue can be closed. :) |
We need to design the dialogue popup that will inform users of the keyboard presses available for using the sim.
Here's the list of keyboard presses and actions (from Jon H.):
There also will probably be a shortcut key to bring up this "help" info.
@arouinfar - can you mockup a popup box, similar to @terracoda 's mockups for BASE? (Ideally before the Thanksiving break). Note: all the key presses in JT are "standard", unlike in BASE, so JT's popup will be much simpler.
The text was updated successfully, but these errors were encountered: