Skip to content

Commit 1e79152

Browse files
Merge pull request #49048 from bmackinney/keyboard-feedback
Update keyboard accessibility documentation and add new focus order a…
2 parents 79a1dee + 1313bd4 commit 1e79152

File tree

7 files changed

+24
-56
lines changed

7 files changed

+24
-56
lines changed

learn-pr/cela-accessibility/develop-keyboard-accessible-products/includes/3-review-accessibility-guidelines.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,6 @@ This criterion aims to maximize compatibility with both current and future user
3434

3535
## Resources
3636

37-
[Keyboard Accessible WCAG Quick Ref Guide](https://www.w3.org/WAI/WCAG22/quickref/?showtechniques=131)
38-
39-
[Focus Order WCAG Quick Ref Guide](https://www.w3.org/WAI/WCAG22/quickref/?showtechniques=131)
40-
41-
[On Focus WCAG Quick Ref Guide](https://www.w3.org/WAI/WCAG22/quickref/?showtechniques=131%2C321)
37+
- [Keyboard Accessible WCAG Quick Ref Guide](https://www.w3.org/WAI/WCAG22/quickref/?showtechniques=131)
38+
- [Focus Order WCAG Quick Ref Guide](https://www.w3.org/WAI/WCAG22/quickref/?showtechniques=131)
39+
- [On Focus WCAG Quick Ref Guide](https://www.w3.org/WAI/WCAG22/quickref/?showtechniques=131%2C321)

learn-pr/cela-accessibility/develop-keyboard-accessible-products/includes/4-review-design-considerations.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,8 @@ In addition to navigation, features are often accessible through accelerator key
1919

2020
### Resources
2121

22-
[Keyboard Accelerators](/windows/apps/design/input/keyboard-accelerators)
23-
24-
[Mac Keyboard Shortcuts](https://support.apple.com/en-us/102650)
22+
- [Keyboard Accelerators](/windows/apps/design/input/keyboard-accelerators)
23+
- [Mac Keyboard Shortcuts](https://support.apple.com/en-us/102650)
2524

2625
## Keyboard focus visual indicators
2726

@@ -42,7 +41,6 @@ Ensure that minimum contrast ratio requirements are met, including in high-contr
4241
Annotations for keyboard accessibility help designers communicate how users can navigate and interact with their designs using a keyboard. Here are some common annotations using these plugins for Figma:
4342
- [ A11y Focus Order Plugin and Fluent Accessibility Design Toolkit](https://www.figma.com/community/plugin/1208180794570801545/includeaccessibility-annotations?trackingId=6o88RA2ATkWCJlzn7jeJNg%3D%3D)
4443
- [A11y Focus Order Plugin](https://www.figma.com/community/plugin/731310036968334777/a11y-focus-order)
45-
- [ A11y Focus Order Plugin and Fluent Accessibility Design Toolkit](https://www.figma.com/community/plugin/1208180794570801545/includeaccessibility-annotations?trackingId=6o88RA2ATkWCJlzn7jeJNg%3D%3D):
4644

4745
#### Focus Order
4846

@@ -51,8 +49,10 @@ Indicate the sequence in which interactive elements should receive focus when na
5149
1. Use the focus order indicators to show the intended ordering of elements when being navigated using a keyboard.
5250
1. Long lists of like elements should be by-passable. For instance, imagine a Teams meeting where user has to make a user as signer. Users can invoke the menu item of that user and using arrow key they can drill down on the required menu item.
5351

54-
:::image type="complex" source="../media/focus-order-accessibility-annotation-teams-meeting.png" alt-text="Screenshot of Teams meeting with focus order annotations." lightbox="../media/focus-order-accessibility-annotation-teams-meeting.png":::
55-
Focus Order Accessibility Annotation Teams meeting Image Description: Image of Teams meeting with Gallery and People tile defined as custom component, Overflow as library component, Drop-down menu as parent component and make me a signer is one of the child components. Each section has numerical labels indicating the focus order.
52+
In the next image, the focus order is from left to right along the top navigation menu. Users can navigate the search categories within the dropdown using the **down arrow** or skip it with **Tab**.
53+
54+
:::image type="complex" source="../media/focus-order-accessibility-annotation-wishcart-application.png" alt-text="Screenshot of WishCart application with focus order annotations." lightbox="../media/focus-order-accessibility-annotation-wishcart-application.png":::
55+
Image of WishCart application with wishcart, delivering to New Delhi, Search field, choose language for shopping, hello sign in accounts &lists, returns &orders and Cart defined as custom component, Search in all categories Drop-down list as parent component and ‘All categories’, ‘Devices’ & ‘fashion’ as its child components. Each section has numerical labels indicating the focus order.
5656
:::image-end:::
5757

5858
:::image type="complex" source="../media/focus-order-accessibility-annotation.png" alt-text="Screenshot of Teach Access homepage with focus order annotations." lightbox="../media/focus-order-accessibility-annotation.png":::
Lines changed: 8 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,15 @@
11
When designing an application, it's important to consider how it will function with a keyboard, just as it would with a mouse.
22

3-
Start by determining the hierarchy and order of elements and decide which keys will be used for navigation and actions.
4-
5-
Specify visual indicators for keyboard focus, such as changing the fill color or adding outlines. This ensures a consistent and cohesive experience across different themes, including high-contrast mode and compliance with contrast requirements.
6-
7-
:::image type="complex" source="../media/keyboard-focus-visual-indicators.png" alt-text="Screenshot showing focus indicators for buttons." lightbox="../media/keyboard-focus-visual-indicators.png":::
8-
The image consists of two sections. The top section displays three buttons—Simplified Ribbon, Go Premium, and Sign Out—in their normal state. The bottom section shows the same buttons in their focused state, highlighting focus indicators: dots, fill color, and outlines.
9-
:::image-end:::
10-
11-
Decide if the keyboard focus should stay within a container while navigating. For example, pressing the **Tab** key should cycle through elements within a specific section without moving to other areas of the app. Also, specify where the focus should go after certain events, like expanding and dismissing a dropdown menu or if an element disappears.
12-
13-
Determine whether users can navigate to disabled controls. For instance, in some dialogs, you can't navigate to disabled controls until they are enabled. Additionally, specify any keyboard shortcuts to improve efficiency.
14-
15-
Only include interactive elements in the keyboard navigation. For example, navigating to a description area should not trigger any actions.
16-
17-
:::image type="complex" source="../media/focus-order-accessibility-annotation-teams-meeting.png" alt-text="Screenshot of Teams meeting with focus order annotations." lightbox="../media/focus-order-accessibility-annotation-teams-meeting.png":::
18-
Focus Order Accessibility Annotation Teams meeting Image Description: Image of Teams meeting with Gallery and People tile defined as custom component, Overflow as library component, Drop-down menu as parent component and make me a signer is one of the child components. Each section has numerical labels indicating the focus order.
19-
:::image-end:::
20-
21-
:::image type="complex" source="../media/focus-order-accessibility-annotation.png" alt-text="Screenshot of Teach Access homepage with focus order annotations." lightbox="../media/focus-order-accessibility-annotation.png":::
22-
Image of the Teach Access homepage, with focus order accessibility annotations on two sections labeled "Who We Are" and "What is the accessibility Skills Gap?" Each section has numerical labels indicating the focus order.
23-
:::image-end:::
24-
25-
To make keyboard shortcuts discoverable, add documentation within the app, such as tooltips that show shortcuts when hovering and Keyboard focus over buttons, and include a section on keyboard navigation in the online help.
26-
27-
:::image type="complex" source="../media/shortcut-keys-accessibility-annotation.png" alt-text="Screenshot showing shortcut keys annotations." lightbox="../media/shortcut-keys-accessibility-annotation.png":::
28-
Example of accessibility annotations for shortcut keys, with the shortcuts “Ctrl+Shift+M”=Mute “, Ctrl+Shift+E”=Share Content, and. “Ctrl+Shift+H”=Leave Meeting
29-
:::image-end:::
30-
31-
:::image type="complex" source="../media/keyboard-interactions-accessibility-annotations.png" alt-text="Screenshot showing keyboard interactions and shortcuts." lightbox="../media/keyboard-interactions-accessibility-annotations.png":::
32-
Example of accessibility annotations for keyboard interactions and shortcuts, with the text “Bold” button = Ctrl+B, “Italic” button = Ctrl+I, and “Underline” button = Ctrl+U
33-
:::image-end:::
3+
- Start by determining the hierarchy and order of elements and decide which keys will be used for navigation and actions.
4+
- Specify visual indicators for keyboard focus, such as changing the fill color or adding outlines. This ensures a consistent and cohesive experience across different themes, including high-contrast mode and compliance with contrast requirements.
5+
- Decide if the keyboard focus should stay within a container while navigating. For example, pressing the **Tab** key should cycle through elements within a specific section without moving to other areas of the app. Also, specify where the focus should go after certain events, like expanding and dismissing a dropdown menu or if an element disappears.
6+
- Determine whether users can navigate to disabled controls. For instance, in some dialogs, you can't navigate to disabled controls until they are enabled. Additionally, specify any keyboard shortcuts to improve efficiency.
7+
- Only include interactive elements in the keyboard navigation. For example, navigating to a description area should not trigger any actions.
8+
- To make keyboard shortcuts discoverable, add documentation within the app, such as tooltips that show shortcuts when hovering and Keyboard focus over buttons, and include a section on keyboard navigation in the online help.
349

3510
By planning these details before implementation, you can create a more accessible and user-friendly design.
3611

3712
## Resources
3813

39-
[Guidelines for Keyboard User Interface Design](/previous-versions/windows/desktop/dnacc/guidelines-for-keyboard-user-interface-design)
40-
41-
[Windows Keyboard Shortcuts for Accessibility](https://support.microsoft.com/en-us/windows/windows-keyboard-shortcuts-for-accessibility-021bcb62-45c8-e4ef-1e4f-41b8c1fc87fd)<br>
14+
- [Guidelines for Keyboard User Interface Design](/previous-versions/windows/desktop/dnacc/guidelines-for-keyboard-user-interface-design)
15+
- [Windows Keyboard Shortcuts for Accessibility](https://support.microsoft.com/en-us/windows/windows-keyboard-shortcuts-for-accessibility-021bcb62-45c8-e4ef-1e4f-41b8c1fc87fd)

learn-pr/cela-accessibility/develop-keyboard-accessible-products/includes/6-implement-keyboard-accessibility.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,6 @@ One of the most important tips is to test your website or application using only
6060

6161
## Resources
6262

63-
[Keyboard Accessibility](/windows/apps/design/accessibility/keyboard-accessibility)
64-
65-
[Guidelines for Keyboard User Interface Design](/previous-versions/windows/desktop/dnacc/guidelines-for-keyboard-user-interface-design)
66-
67-
[Developing a Keyboard Interface](https://www.w3.org/WAI/ARIA/apg/practices/keyboard-interface/)
63+
- [Keyboard Accessibility](/windows/apps/design/accessibility/keyboard-accessibility)
64+
- [Guidelines for Keyboard User Interface Design](/previous-versions/windows/desktop/dnacc/guidelines-for-keyboard-user-interface-design)
65+
- [Developing a Keyboard Interface](https://www.w3.org/WAI/ARIA/apg/practices/keyboard-interface/)

learn-pr/cela-accessibility/develop-keyboard-accessible-products/includes/7-test-keyboard-accessibility.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,5 @@ User testing for keyboard accessibility is crucial to ensure that websites and a
2323

2424
## Resources
2525

26-
[Keyboard Testing](https://accessibility.web-resources.upenn.edu/testing-evaluating-accessibility/manual-testing/keyboard-testing)
27-
28-
WebAIM: [Keyboard Testing](https://webaim.org/techniques/keyboard/)
26+
- [Keyboard Testing](https://accessibility.web-resources.upenn.edu/testing-evaluating-accessibility/manual-testing/keyboard-testing)
27+
- WebAIM: [Keyboard Testing](https://webaim.org/techniques/keyboard/)

learn-pr/cela-accessibility/develop-keyboard-accessible-products/includes/9-summary.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,5 @@ This module was developed in collaboration with [Teach Access](https://teachacce
1212

1313
## Additional resources
1414

15-
_Keyboard testing_. (n.d.). https://accessibility.web-resources.upenn.edu/testing-evaluating-accessibility/manual-testing/keyboard-testing
16-
17-
Truelove, B. (2023, September 30). _Accessible Figma designs just got easier._ Accessibility Plugin by Microsoft Design. https://www.linkedin.com/pulse/accessible-figma-designs-just-got-easier-ben-truelove/?trackingId=6o88RA2ATkWCJlzn7jeJNg%3D%3D
15+
- _Keyboard testing_. (n.d.). https://accessibility.web-resources.upenn.edu/testing-evaluating-accessibility/manual-testing/keyboard-testing
16+
- Truelove, B. (2023, September 30). _Accessible Figma designs just got easier._ Accessibility Plugin by Microsoft Design. https://www.linkedin.com/pulse/accessible-figma-designs-just-got-easier-ben-truelove/?trackingId=6o88RA2ATkWCJlzn7jeJNg%3D%3D
Loading

0 commit comments

Comments
 (0)