-
Notifications
You must be signed in to change notification settings - Fork 540
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
[Designer][Accessibility] Put open showcard next in tab order #5424
Conversation
I don't believe this is the right way to handle this. Currently, one navigates from one button to another in a set using the Tab key, thus indeed a user needs to tab through all buttons before they can land in the open ShowCard. We should change so that the navigation in the button strip is done via arrow keys. The full button strip would be a tab stop, but the next tab would go to to the next focusable element in the card, namely the open card. |
We probably want to have a design conversation about this. |
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.
I don't believe this is the right way to handle the requirement. Let's have a design discussion.
Hi @golddove. This non-spec pull request has had no recent activity for the past 5 days . Please take the necessary actions (review, address feedback or commit if reviewed already) to move this along. |
Hi @golddove; Thanks for taking action on your previously stale pull request. Resetting staleness. |
@@ -4544,12 +4558,28 @@ class ActionCollection { | |||
} | |||
|
|||
private expandShowCardAction(action: ShowCardAction, raiseEvent: boolean) { | |||
let afterSelectedAction = false; | |||
for (let button of this.buttons) { |
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.
Empty line before if
for (let button of this.buttons) { | ||
console.log(button); | ||
console.log(afterSelectedAction); | ||
// remove all following actions from tabOrder, to skip focus directly to expanded card |
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.
Empty line before comment
if (afterSelectedAction) { | ||
button.focusable = false; | ||
console.log(button.focusable); | ||
} | ||
if (button.action !== action) { |
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.
Empty line before if
afterSelectedAction = true; | ||
} | ||
} | ||
if(action.renderedElement) { |
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.
Empty line before if
Hi @golddove. This non-spec pull request has had no recent activity for the past 5 days . Please take the necessary actions (review, address feedback or commit if reviewed already) to move this along. |
Hi @golddove; Thanks for taking action on your previously stale pull request. Resetting staleness. |
…oft#5424) * Put open showcard next in tab order * Remove logs * Empty line * Fix merge Co-authored-by: Paul Campbell <paulcam@microsoft.com>
Related Issue
ADO 30866987
Description
For keyboard users, an ActionSet with multiple Action.ShowCard's could cause an issue with tab order: after a user selects a ShowCard to activate, they may have to tab through several other Actions in the ActionSet before they reach the newly revealed content. This temporarily removes those Actions from the taborder after a card is revealed (then resets them after tabbing).
Seems to fall under this WCAG failure condition:
F85: Failure of Success Criterion 2.4.3 due to using dialogs or menus that are not adjacent to their trigger control in the sequential navigation order
Sample Card
Scenarios/FoodOrder
How Verified
Manual verification
Microsoft Reviewers: Open in CodeFlow