-
Notifications
You must be signed in to change notification settings - Fork 730
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
[DO NOT MERGE] Test new KDS tabs components in Coach Reports #10109
Conversation
Hi @radinamatic and @MisRob, I was able to identify the following differences with latest
Here's a short video comparison: 2023-02-15_17-07-06.mp4 |
That is what is supposed to happen, we had it not properly coded until now 😉 |
Thank you, @pcenov, I will fix visual regressions (1) and (2). Regarding (3), just to add to what @radinamatic has mentioned already, here's the expected navigation by keyboard described in more detail https://www.w3.org/WAI/ARIA/apg/patterns/tabs/ ("Keyboard Interaction" section) if that'd be helpful. |
@MisRob So far it's looking very good, even though I haven't finished testing all the nooks and crannies 😉 One thing I noticed is that when user has finished tabbing through the focusable elements in one panel, the next For some reason I was under the impression that they should move to the next tab, but there's no prescribed flow in the pattern specs you cited above, although I must admit the phrases like this do not help me much understand what is actually recommended... 😒
|
Thank you @radinamatic I see two things in your previous comment (1) "when user has finished tabbing through the focusable elements in one panel, the next Tab press takes them outside the tablist" I too didn't notice any guidelines in regard to this behavior. I think you have a better grasp on what would feel more intuitive to keyboard users so feel free to suggest different behavior and I will implement it if you think it'd be better. Regarding (2)
My understanding is that this is not related to (1), but rather to another similar note from this page
This, to me, seems to describe two scenarios: Now, let's say the focus is on the tab list. When I click TAB, in (A) the focus moves to This is how I implemented it, however, it's true that some wording in the guidelines in this regard is indeed confusing. Please let me know if this behavior makes sense to you. |
@radinamatic Besides the conversation from the comment above, do you have any other notes? |
@MisRob We are in agreement around the interpretation, and especially about the above confusion... After digging in the code and checking roles, states and keyboard navigation, I indeed have nothing to remark: you implemented all as per the linked specs, thank you! 🙏🏽 👏🏽 I'm still left with the doubt if the tabbing out of one panel (because there are no more focusable elements in it) which leads the user completely outside of the tabbed interface section (instead of maybe to the following tab in the tablist) is the best user experience, but after a lot of searching I failed to find any recommendation regarding this point. Since is not our place to introduce and establish new things, let's leave it as is. One last thing that I'm not completely certain of is if we should communicate to the user that there is a page URL and thus the title change when they navigate from one tab to another. Not as much for the keyboard navigation, as the focus is rightfully placed to the newly loaded selected tab/panel, but just for the sake of complete information given to the screenreader user who cannot see that the new page has been loaded. I wonder if it has any value to append the new page title to communicate that...? 🤔 |
Thanks, @radinamatic.
By this, do you mean adding some kind of visually hidden information? If you could post an example, that'd be helpful, I'm not sure if I can understand correctly. |
This is a sample of the NVDA speech output:
Broken down by keyboard steps:
Before both steps 1 and 3 there was the URL and page title change, namely: Step 1. Step 3. For a moment I was considering whether these changes should be communicated to the user, but then realized that it would be way too verbose to hear it after each tab change, so I'm taking it back 🙂 Good to go! 🎉 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And we have the proper, accessible tab experience in Kolibri! 🎉 🎉 🎉
Excellent job, @MisRob, thank you!!! 🥇 💯
Thank you @radinamatic, in any case, thank you for the more detailed explanation of NVDA outputs, it's been helpful for me to understand better what's happening. |
I'm closing this since it was only for testing. As soon as we merge learningequality/kolibri-design-system#420, I will open a new PR to Kolibri with the correct KDS reference and both Coach tabs updated to use new KDS components. On that opportunity, I will also address @pcenov's feedback
for this is matter of Kolibri code rather than that of KDS. |
Just for testing.
See learningequality/kolibri-design-system#420