Test: APG modal dialog example
Screen Reader support level: partial (32/44)
Voice Control support level: unknown
On this page
About this test
This example implements a modal dialog.
Submit new test resultsAge of results
Results in this test range from 2 years ago to 2 years ago. See detailed information about test dates and versions for more information.
Caution
Failing or partial results may be out of date. The oldest result is from 2 years ago. Consider running this test and contributing results.
Test HTML
view the external testSummary of Screen Reader support by expectation
* means that some support is hidden behind settings
Summary of Voice Control support by expectation
aria-modal attributeExpectation | Dragon Naturally Speaking | Voice Access (Android) | Voice Control (iOS) | Voice Control (MacOS) | Windows Speech Recognition | Windows Voice Access |
---|
Chrome | Chrome | Safari | Safari | Edge | Chrome | Edge | Chrome |
---|
Not applicable |
dialog roleExpectation | Dragon Naturally Speaking | Voice Access (Android) | Voice Control (iOS) | Voice Control (MacOS) | Windows Speech Recognition | Windows Voice Access |
---|
Chrome | Chrome | Safari | Safari | Edge | Chrome | Edge | Chrome |
---|
Not applicable |
* means that some support is hidden behind settings
Summary of Keyboard support by expectation
aria-modal attributeExpectation | Windows Keyboard | Mac Keyboard | iOS Keyboard | Android Keyboard |
---|
Chrome | Firefox | Edge | Chrome | Safari | Safari | Chrome |
---|
Not applicable |
dialog roleExpectation | Windows Keyboard | Mac Keyboard | iOS Keyboard | Android Keyboard |
---|
Chrome | Firefox | Edge | Chrome | Safari | Safari | Chrome |
---|
Not applicable |
* means that some support is hidden behind settings
Detailed support results by expectation
Expectation for the aria-modal attribute: convey the presence of aria-modal=true - applied to the dialog role
This expectation is applied to the dialog role. Expectations and results might differ when the the feature is applied to different roles.
This expectation is from the aria-modal attribute feature.
Rationale:
Users need to be aware that other content is obscured by the modal.
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Examples:
- Screen readers might convey the modal state when entering the modal
- Screen readers might imply the modal state by restricting reading and navigation to the modal content
Grading method:
Just one of the listed commands must pass for the expectation to pass.
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | Chrome | not applicable | - |
JAWS | Chrome | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog, (dialog content), street: edit, type in text"Result Notes: conveyed implicitly by not being able to access content behind the modal. |
JAWS | Edge | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog, (dialog content), street: edit, type in text"Result Notes: conveyed implicitly by not being able to access content behind the modal. |
JAWS | Firefox | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog (modal content) street: edit, type in text"Result Notes: conveyed implicitly by not being able to access content behind the modal. |
Narrator | Edge | none | - Result: (fail)
Test Case: open the dialog using Activate Item (primary action) (Enter or Space Bar)- Launch Narrator and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space Bar" (Activate Item (primary action))
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, Scan off"Result Notes: Not implied by content being limited to the modal. See other expectations for details.Grading note: This command may be expected to fail. This result simply indicates that it did not yield support.Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
NVDA | Chrome | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch NVDA and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, blank"Result Notes: Modal state was not conveyed but non-modal content was obscured which implies the modal state. See other expectations for details. |
NVDA | Edge | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch NVDA and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, blank"Result Notes: Modal state was not conveyed but non-modal content was obscured which implies the modal state. See other expectations for details. |
NVDA | Firefox | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch NVDA and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, has auto complete, blank."Result Notes: Modal state was not conveyed but non-modal content was obscured which implies the modal state. See other expectations for details. |
Orca | Firefox | none | - Result: (fail)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (up arrow)- Launch Orca and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: content outside could be found ("add delivery address push button")Grading note: This command may be expected to fail. This result simply indicates that it did not yield support.Result: (fail)Test Case: attempt to navigate backwards to content behind the open modal using Previous link (shift+ k)- Launch Orca and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift+ k" (Previous link)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: "date picker dialog example, link"Grading note: This command may be expected to fail. This result simply indicates that it did not yield support.Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
TalkBack | Chrome | none | - Result: (fail)
Test Case: open the dialog using Activate button (double tap (or alt+enter))- Launch TalkBack and Chrome.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe right (or alt+right arrow)" (Read next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: button
- issue command
- Using the command: "double tap (or alt+enter)" (Activate button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: within target
is the expectation met?Output: "edit box, street, english (US) qwerty shown"Result Notes: Modal state was not conveyed but non-modal content was not obscured. See other expectations for details.Grading note: This command may be expected to fail. This result simply indicates that it did not yield support.Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
Voice Access (Android) | Chrome | not applicable | - |
Voice Control (iOS) | Safari | not applicable | - |
Voice Control (MacOS) | Safari | not applicable | - |
VoiceOver (iOS) | Safari | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Double tap)- Launch VoiceOver (iOS) and Safari.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe Right" (Next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: button
- issue command
- Using the command: "Double tap" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: within target
is the expectation met?Output: "(earcon indicating button was activated), street, text field"Result Notes: Modal state was implied by not being able to navigate to content outside the modal. |
VoiceOver (macOS) | Safari | partial | - Result: (partial)
Test Case: open the dialog using Activate Button (VO + space)- Launch VoiceOver (macOS) and Safari.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "next_button"
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "VO + space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "street, edit text with autofill menu"Result Notes: Modal state was not conveyed but non-modal content was partially obscured which partially implies the modal state. See other expectations for details. |
Windows Speech Recognition | Edge | not applicable | - |
Windows Speech Recognition | Chrome | not applicable | - |
Windows Voice Access | Edge | not applicable | - |
Windows Voice Access | Chrome | not applicable | - |
Windows Keyboard | Chrome | not applicable | - |
Windows Keyboard | Firefox | not applicable | - |
Windows Keyboard | Edge | not applicable | - |
Mac Keyboard | Chrome | not applicable | - |
Mac Keyboard | Safari | not applicable | - |
iOS Keyboard | Safari | not applicable | - |
Android Keyboard | Chrome | not applicable | - |
Extended Support for: aria-modal attribute: convey the presence of aria-modal=true
These are less common combinations
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | IE | not applicable | - |
Dragon Naturally Speaking | Firefox | not applicable | - |
JAWS 2021.2012.57 | IE 11 | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and IE.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog, street: edit, type in text"Result Notes: The modal state was not explicitly conveyed, but content outside the modal was obscured, which implies the dialog state. |
Narrator | Firefox | unknown | - |
Narrator | Chrome | unknown | - |
Narrator | IE | unknown | - |
NVDA | IE | unknown | - |
TalkBack | Firefox | unknown | - |
Voice Access (Android) | Firefox | not applicable | - |
VoiceOver (iOS) | Chrome | unknown | - |
VoiceOver (macOS) | Chrome | unknown | - |
VoiceOver (macOS) | Firefox | unknown | - |
Orca | Chrome | unknown | - |
Voice Control (MacOS) | Chrome | not applicable | - |
Voice Control (MacOS) | Firefox | not applicable | - |
Mac Keyboard | Firefox | not applicable | - |
Android Keyboard | Firefox | not applicable | - |
Back to topExpectation for the aria-modal attribute: limit reading to children of aria-modal=true - applied to the dialog role
This expectation is applied to the dialog role. Expectations and results might differ when the the feature is applied to different roles.
This expectation is from the aria-modal attribute feature.
Rationale:
Users should not be able to access content outside of the modal. However, AT are not required to implement this functionality per the ARIA spec, and authors may implement this on their own.
Strength of this expectation for different types of assistive technologies:
- Screen Readers: SHOULD
- Voice Control: NA
Grading method:
All of the listed commands must pass for the expectation to pass.
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | Chrome | not applicable | - |
JAWS | Chrome | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (Up arrow)- Launch JAWS and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
JAWS | Edge | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (Up arrow)- Launch JAWS and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
JAWS | Firefox | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (Up arrow)- Launch JAWS and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modalResult Notes: The title of the window was announced |
Narrator | Edge | none | - Result: (fail)
Test Case: attempt to navigate backwards to content behind the open modal using Jump to previous item (scan mode) (Up arrow)- Launch Narrator and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space Bar" (Activate Item (primary action))
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Up arrow" (Jump to previous item (scan mode))
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: elements outside the modal were foundGrading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
NVDA | Chrome | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (up arrow)- Launch NVDA and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
NVDA | Edge | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (up arrow)- Launch NVDA and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
NVDA | Firefox | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (up arrow)- Launch NVDA and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modalResult Notes: If you click content outside of the modal with a mouse, it is then possible to navigate that content behind the modal. This does not appear to be possible when using keyboard-alone. |
Orca | Firefox | none | - Result: (fail)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (up arrow)- Launch Orca and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: content outside could be found ("add delivery address push button")Result: (fail)Test Case: attempt to navigate backwards to content behind the open modal using Previous link (shift+ k)- Launch Orca and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift+ k" (Previous link)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: "date picker dialog example, link"Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
TalkBack | Chrome | none | - Result: (fail)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (Swipe left (or alt+left arrow))- Launch TalkBack and Chrome.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe right (or alt+right arrow)" (Read next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "double tap (or alt+enter)" (Activate button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Swipe left (or alt+left arrow)" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: before target
is the expectation met?Output: "add delivery address, button"Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
Voice Access (Android) | Chrome | not applicable | - |
Voice Control (iOS) | Safari | not applicable | - |
Voice Control (MacOS) | Safari | not applicable | - |
VoiceOver (iOS) | Safari | partial | - Result: (partial)
Test Case: attempt to navigate backwards to content behind the open modal using Previous item (Swipe Left)- Launch VoiceOver (iOS) and Safari.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe Right" (Next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Double tap" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Swipe Left" (Previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: before target
is the expectation met?Output: "street, text field"Result Notes: announced some quotations marks and the main landmark, but not other contentResult: (partial)Test Case: attempt to navigate forwards to content behind the open modal using Next item (Swipe Right)- Launch VoiceOver (iOS) and Safari.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe Right" (Next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Double tap" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: within target
issue command- summary: attempt to navigate forwards past the end of the dialog
- Using the command: "Swipe Right" (Next item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: after target
is the expectation met?Output: content was not found except for some quotation marksResult Notes: announced some quotations marks and the main landmark, but not other content |
VoiceOver (macOS) | Safari | partial | - Result: (partial)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (VO + Left Arrow)- Launch VoiceOver (macOS) and Safari.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "next_button"
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "VO + space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: navigate to the dialog container
- Using the command: "VO + Shift + Up Arrow" (Exit an object (such as an iframe))
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: target
- virtual cursor location: target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "VO + Left Arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: some quotes could be found but not other contentResult Notes: Only partial content was found, even after navigating out of the dialog via VO+shift+up arrow |
Windows Speech Recognition | Edge | not applicable | - |
Windows Speech Recognition | Chrome | not applicable | - |
Windows Voice Access | Edge | not applicable | - |
Windows Voice Access | Chrome | not applicable | - |
Windows Keyboard | Chrome | not applicable | - |
Windows Keyboard | Firefox | not applicable | - |
Windows Keyboard | Edge | not applicable | - |
Mac Keyboard | Chrome | not applicable | - |
Mac Keyboard | Safari | not applicable | - |
iOS Keyboard | Safari | not applicable | - |
Android Keyboard | Chrome | not applicable | - |
Extended Support for: aria-modal attribute: limit reading to children of aria-modal=true
These are less common combinations
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | IE | not applicable | - |
Dragon Naturally Speaking | Firefox | not applicable | - |
JAWS 2021.2012.57 | IE 11 | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (Up arrow)- Launch JAWS and IE.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
Narrator | Firefox | unknown | - |
Narrator | Chrome | unknown | - |
Narrator | IE | unknown | - |
NVDA | IE | unknown | - |
TalkBack | Firefox | unknown | - |
Voice Access (Android) | Firefox | not applicable | - |
VoiceOver (iOS) | Chrome | unknown | - |
VoiceOver (macOS) | Chrome | unknown | - |
VoiceOver (macOS) | Firefox | unknown | - |
Orca | Chrome | unknown | - |
Voice Control (MacOS) | Chrome | not applicable | - |
Voice Control (MacOS) | Firefox | not applicable | - |
Mac Keyboard | Firefox | not applicable | - |
Android Keyboard | Firefox | not applicable | - |
Back to topExpectation for the aria-modal attribute: remove outside content from navigational shortcuts when aria-modal=true - applied to the dialog role
This expectation is applied to the dialog role. Expectations and results might differ when the the feature is applied to different roles.
This expectation is from the aria-modal attribute feature.
Rationale:
Users should not be able to access content outside of the modal. However, AT are not required to implement this functionality per the ARIA spec, and authors may implement this on their own.
Strength of this expectation for different types of assistive technologies:
- Screen Readers: SHOULD
- Voice Control: NA
Examples:
- Screen readers must not allow allow users to jump to the next element type if that element is outside of the modal
- Screen readers must not include outside content in the list of elements
Grading method:
All of the listed commands must pass for the expectation to pass.
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | Chrome | not applicable | - |
JAWS | Chrome | yes | - Result: (pass)
Test Case: Open the element list while the modal is open using Open element list (Insert + F3)- Launch JAWS and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: within target
- virtual cursor location: within target
set mode to browseissue command- summary: attempt to navigate to content behind the modal via the element list
- Using the command: "Insert + F3" (Open element list)
is the expectation met?Output: outside content was displayed in content lists, such as the of links, etc. Note: not possible to move to an item in the list.Result: (pass)Test Case: attempt to navigate backwards to content behind the open modal using Previous unvisited link (shift+u)- Launch JAWS and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift+u" (Previous unvisited link)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no links were foundResult Notes: This is sort of fragile. If you use the mouse to click outside of the modal content, the modal stays open but shortcuts can be used to jump to outside content. It appears to work fine if keyboard was used exclusively. |
JAWS | Edge | yes | - Result: (pass)
Test Case: Open the element list while the modal is open using Open element list (Insert + F3)- Launch JAWS and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: within target
- virtual cursor location: within target
set mode to browseissue command- summary: attempt to navigate to content behind the modal via the element list
- Using the command: "Insert + F3" (Open element list)
is the expectation met?Output: outside content was displayed in content lists, such as the of links, etc. Note: not possible to move to an item in the list.Result: (pass)Test Case: attempt to navigate backwards to content behind the open modal using Previous unvisited link (shift+u)- Launch JAWS and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift+u" (Previous unvisited link)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no links were foundResult Notes: This is sort of fragile. If you use the mouse to click outside of the modal content, the modal stays open but shortcuts can be used to jump to outside content. It appears to work fine if keyboard was used exclusively. |
JAWS | Firefox | partial | - Result: (fail)
Test Case: Open the element list while the modal is open using Open element list (Insert + F3)- Launch JAWS and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: within target
- virtual cursor location: within target
set mode to browseissue command- summary: attempt to navigate to content behind the modal via the element list
- Using the command: "Insert + F3" (Open element list)
is the expectation met?Output: outside content was displayed in content lists, such as the of links, etc.Result: (pass)Test Case: attempt to navigate backwards to content behind the open modal using Previous unvisited link (shift+u)- Launch JAWS and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift+u" (Previous unvisited link)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no links were foundResult Notes: This is sort of fragile. If you use the mouse to click outside of the modal content, the modal stays open but shortcuts can be used to jump to outside content. It appears to work fine if keyboard was used exclusively. |
Narrator | Edge | none | - Result: (fail)
Test Case: attempt to navigate backwards to content behind the open modal using Previous heading (shift + h)- Launch Narrator and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space Bar" (Activate Item (primary action))
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift + h" (Previous heading)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: headings were found outside of the modalGrading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
NVDA | Chrome | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using previous form field (shift + f)- Launch NVDA and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift + f" (previous form field)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no outside form fields were foundResult: (pass)Test Case: attempt to navigate backwards to content behind the open modal using Previous link (shift+ k)- Launch NVDA and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift+ k" (Previous link)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no outside links were foundResult: (pass)Test Case: Open the element list while the modal is open using Open Elements List (NVDA + F7)- Launch NVDA and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: within target
- virtual cursor location: within target
set mode to browseissue command- summary: attempt to navigate to content behind the modal via the element list
- Using the command: "NVDA + F7" (Open Elements List)
is the expectation met?Output: only content within the modal was included in the lists |
NVDA | Edge | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using previous form field (shift + f)- Launch NVDA and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift + f" (previous form field)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no outside form fields were foundResult: (pass)Test Case: attempt to navigate backwards to content behind the open modal using Previous link (shift+ k)- Launch NVDA and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift+ k" (Previous link)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no outside links were foundResult: (pass)Test Case: Open the element list while the modal is open using Open Elements List (NVDA + F7)- Launch NVDA and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: within target
- virtual cursor location: within target
set mode to browseissue command- summary: attempt to navigate to content behind the modal via the element list
- Using the command: "NVDA + F7" (Open Elements List)
is the expectation met?Output: only content within the modal was included in the lists |
NVDA | Firefox | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using previous form field (shift + f)- Launch NVDA and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift + f" (previous form field)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no outside form fields were foundResult: (pass)Test Case: attempt to navigate backwards to content behind the open modal using Previous link (shift+ k)- Launch NVDA and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift+ k" (Previous link)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no outside links were foundResult: (pass)Test Case: Open the element list while the modal is open using Open Elements List (NVDA + F7)- Launch NVDA and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: within target
- virtual cursor location: within target
set mode to browseissue command- summary: attempt to navigate to content behind the modal via the element list
- Using the command: "NVDA + F7" (Open Elements List)
is the expectation met?Output: only content within the modal was included in the lists |
Orca | Firefox | partial | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using previous form field (shift + tab)- Launch Orca and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift + tab" (previous form field)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no outside form fields were foundResult: (fail)Test Case: attempt to navigate backwards to content behind the open modal using Previous link (shift+ k)- Launch Orca and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift+ k" (Previous link)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: "date picker dialog example, link"Result: (partial)Test Case: Open the element list while the modal is open using Open a list of links (alt + shift+ k)- Launch Orca and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: within target
- virtual cursor location: within target
set mode to browseissue command- summary: attempt to navigate to content behind the modal via the element list
- Using the command: "alt + shift+ k" (Open a list of links)
is the expectation met?Output: outside links are listed. When jumping to those links, focus is redirected back to the open dialog.Result Notes: partial because outside links are listed but its not possible to jump to them. |
TalkBack | Chrome | none | - Result: (fail)
Test Case: attempt to navigate backwards to content behind the open modal using previous link (correct reading control must be selected) (Swipe up (alt+shift+L))- Launch TalkBack and Chrome.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe right (or alt+right arrow)" (Read next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "double tap (or alt+enter)" (Activate button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Swipe up (alt+shift+L)" (previous link (correct reading control must be selected))
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: before target
is the expectation met?Output: content outside of the modal was announcedGrading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
Voice Access (Android) | Chrome | not applicable | - |
Voice Control (iOS) | Safari | not applicable | - |
Voice Control (MacOS) | Safari | not applicable | - |
VoiceOver (iOS) | Safari | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using previous link (correct item type must be selected) (Swipe up)- Launch VoiceOver (iOS) and Safari.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe Right" (Next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Double tap" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Swipe up" (previous link (correct item type must be selected))
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: before target
is the expectation met?Output: "link not found" |
VoiceOver (macOS) | Safari | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Previous Heading (VO + Shift + Command + H)- Launch VoiceOver (macOS) and Safari.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "next_button"
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "VO + space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: navigate to the dialog container
- Using the command: "VO + Shift + Up Arrow" (Exit an object (such as an iframe))
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: target
- virtual cursor location: target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "VO + Shift + Command + H" (Previous Heading)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: "First heading, Heading level 2, add delivery address"Result: (pass)Test Case: Open the element list while the modal is open using Open Rotor (VO + U)- Launch VoiceOver (macOS) and Safari.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "next_button"
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "VO + space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: within target
- virtual cursor location: within target
set mode to browseissue command- summary: attempt to navigate to content behind the modal via the element list
- Using the command: "VO + U" (Open Rotor)
is the expectation met?Output: only content within the modal was listed |
Windows Speech Recognition | Edge | not applicable | - |
Windows Speech Recognition | Chrome | not applicable | - |
Windows Voice Access | Edge | not applicable | - |
Windows Voice Access | Chrome | not applicable | - |
Windows Keyboard | Chrome | not applicable | - |
Windows Keyboard | Firefox | not applicable | - |
Windows Keyboard | Edge | not applicable | - |
Mac Keyboard | Chrome | not applicable | - |
Mac Keyboard | Safari | not applicable | - |
iOS Keyboard | Safari | not applicable | - |
Android Keyboard | Chrome | not applicable | - |
Extended Support for: aria-modal attribute: remove outside content from navigational shortcuts when aria-modal=true
These are less common combinations
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | IE | not applicable | - |
Dragon Naturally Speaking | Firefox | not applicable | - |
JAWS 2021.2012.57 | IE 11 | partial | - Result: (fail)
Test Case: Open the element list while the modal is open using Open element list (Insert + F3)- Launch JAWS and IE.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[aria-modal=true]`
- keyboard focus location: within target
- virtual cursor location: within target
set mode to browseissue command- summary: attempt to navigate to content behind the modal via the element list
- Using the command: "Insert + F3" (Open element list)
is the expectation met?Output: outside content was displayed in content lists, such as the of links, etc. Note: it IS possible to navigate to headings in this list and break free from the modal.Result: (pass)Test Case: attempt to navigate backwards to content behind the open modal using Previous unvisited link (shift+u)- Launch JAWS and IE.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "shift+u" (Previous unvisited link)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: no links were found |
Narrator | Firefox | unknown | - |
Narrator | Chrome | unknown | - |
Narrator | IE | unknown | - |
NVDA | IE | unknown | - |
TalkBack | Firefox | unknown | - |
Voice Access (Android) | Firefox | not applicable | - |
VoiceOver (iOS) | Chrome | unknown | - |
VoiceOver (macOS) | Chrome | unknown | - |
VoiceOver (macOS) | Firefox | unknown | - |
Orca | Chrome | unknown | - |
Voice Control (MacOS) | Chrome | not applicable | - |
Voice Control (MacOS) | Firefox | not applicable | - |
Mac Keyboard | Firefox | not applicable | - |
Android Keyboard | Firefox | not applicable | - |
Back to topExpectation for the dialog role: convey the name of the dialog
This expectation is from the dialog role feature.
Rationale:
Users need to know the purpose of the dialog.
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Grading method:
Just one of the listed commands must pass for the expectation to pass.
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | Chrome | not applicable | - |
JAWS | Chrome | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog, (dialog content), street: edit, type in text"Result Notes: The name and role were conveyed when entering the dialog for the first time. |
JAWS | Edge | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog, (dialog content), street: edit, type in text"Result Notes: The name and role were conveyed when entering the dialog for the first time. |
JAWS | Firefox | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog (modal content) street: edit, type in text"Result Notes: The name and role were conveyed when entering the dialog for the first time. |
Narrator | Edge | yes | - Result: (pass)
Test Case: open the dialog using Activate Item (primary action) (Enter or Space Bar)- Launch Narrator and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space Bar" (Activate Item (primary action))
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, Scan off" |
NVDA | Chrome | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch NVDA and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, blank" |
NVDA | Edge | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch NVDA and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, blank" |
NVDA | Firefox | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch NVDA and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, has auto complete, blank." |
Orca | Firefox | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch Orca and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address dialog, street, entry, focus mode" |
TalkBack | Chrome | none | - Result: (fail)
Test Case: open the dialog using Activate button (double tap (or alt+enter))- Launch TalkBack and Chrome.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe right (or alt+right arrow)" (Read next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: button
- issue command
- Using the command: "double tap (or alt+enter)" (Activate button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: within target
is the expectation met?Output: "edit box, street, english (US) qwerty shown"Result Notes: not conveyed when first entering the dialogGrading note: This command may be expected to fail. This result simply indicates that it did not yield support.Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
Voice Access (Android) | Chrome | not applicable | - |
Voice Control (iOS) | Safari | not applicable | - |
Voice Control (MacOS) | Safari | not applicable | - |
VoiceOver (iOS) | Safari | none | - Result: (fail)
Test Case: open the dialog using Activate Button (Double tap)- Launch VoiceOver (iOS) and Safari.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe Right" (Next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: button
- issue command
- Using the command: "Double tap" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: within target
is the expectation met?Output: "(earcon indicating button was activated), street, text field"Grading note: This command may be expected to fail. This result simply indicates that it did not yield support.Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
VoiceOver (macOS) | Safari | yes | - Result: (fail)
Test Case: open the dialog using Activate Button (VO + space)- Launch VoiceOver (macOS) and Safari.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "next_button"
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "VO + space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "street, edit text with autofill menu"Grading note: This command may be expected to fail. This result simply indicates that it did not yield support.Result: (pass)Test Case: navigate to modal container using Exit an object (such as an iframe) (VO + Shift + Up Arrow)- Launch VoiceOver (macOS) and Safari.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "next_button"
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "VO + space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: navigate to the modal container
- Using the command: "VO + Shift + Up Arrow" (Exit an object (such as an iframe))
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: target
- virtual cursor location: target
is the expectation met?Output: "out of add delivery address, web dialog, with 9 items" |
Windows Speech Recognition | Edge | not applicable | - |
Windows Speech Recognition | Chrome | not applicable | - |
Windows Voice Access | Edge | not applicable | - |
Windows Voice Access | Chrome | not applicable | - |
Windows Keyboard | Chrome | not applicable | - |
Windows Keyboard | Firefox | not applicable | - |
Windows Keyboard | Edge | not applicable | - |
Mac Keyboard | Chrome | not applicable | - |
Mac Keyboard | Safari | not applicable | - |
iOS Keyboard | Safari | not applicable | - |
Android Keyboard | Chrome | not applicable | - |
Extended Support for: dialog role: convey the name of the dialog
These are less common combinations
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | IE | not applicable | - |
Dragon Naturally Speaking | Firefox | not applicable | - |
JAWS 2021.2012.57 | IE 11 | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and IE.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog, street: edit, type in text"Result Notes: The name and role were conveyed when entering the dialog for the first time. The modal state was not |
Narrator | Firefox | unknown | - |
Narrator | Chrome | unknown | - |
Narrator | IE | unknown | - |
NVDA | IE | unknown | - |
TalkBack | Firefox | unknown | - |
Voice Access (Android) | Firefox | not applicable | - |
VoiceOver (iOS) | Chrome | unknown | - |
VoiceOver (macOS) | Chrome | unknown | - |
VoiceOver (macOS) | Firefox | unknown | - |
Orca | Chrome | unknown | - |
Voice Control (MacOS) | Chrome | not applicable | - |
Voice Control (MacOS) | Firefox | not applicable | - |
Mac Keyboard | Firefox | not applicable | - |
Android Keyboard | Firefox | not applicable | - |
Back to topExpectation for the dialog role: convey its role
This expectation is from the dialog role feature.
Rationale:
Users must be made aware of the dialog context.
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Examples:
- A screen reader might announce an element as something like "<name>, <role>"
- A screen reader might imply the role by the presence of certain context roles
- Voice Control software might let the user say something like "click, <role>".
- Voice Control software might let the user say something like "show numbers", and interactive roles will be flagged with numbers.
Grading method:
Just one of the listed commands must pass for the expectation to pass.
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | Chrome | not applicable | - |
JAWS | Chrome | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog, (dialog content), street: edit, type in text"Result Notes: The name and role were conveyed when entering the dialog for the first time. |
JAWS | Edge | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog, (dialog content), street: edit, type in text"Result Notes: The name and role were conveyed when entering the dialog for the first time. |
JAWS | Firefox | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog (modal content) street: edit, type in text"Result Notes: The name and role were conveyed when entering the dialog for the first time. |
Narrator | Edge | yes | - Result: (pass)
Test Case: open the dialog using Activate Item (primary action) (Enter or Space Bar)- Launch Narrator and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space Bar" (Activate Item (primary action))
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, Scan off" |
NVDA | Chrome | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch NVDA and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, blank" |
NVDA | Edge | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch NVDA and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, blank" |
NVDA | Firefox | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch NVDA and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address, dialog, street, edit, has auto complete, blank." |
Orca | Firefox | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch Orca and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "Add delivery address dialog, street, entry, focus mode" |
TalkBack | Chrome | none | - Result: (fail)
Test Case: open the dialog using Activate button (double tap (or alt+enter))- Launch TalkBack and Chrome.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe right (or alt+right arrow)" (Read next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: button
- issue command
- Using the command: "double tap (or alt+enter)" (Activate button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: within target
is the expectation met?Output: "edit box, street, english (US) qwerty shown"Result Notes: not conveyed when first entering the dialogGrading note: This command may be expected to fail. This result simply indicates that it did not yield support.Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
Voice Access (Android) | Chrome | not applicable | - |
Voice Control (iOS) | Safari | not applicable | - |
Voice Control (MacOS) | Safari | not applicable | - |
VoiceOver (iOS) | Safari | none | - Result: (fail)
Test Case: open the dialog using Activate Button (Double tap)- Launch VoiceOver (iOS) and Safari.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe Right" (Next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: button
- issue command
- Using the command: "Double tap" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- virtual cursor location: within target
is the expectation met?Output: "(earcon indicating button was activated), street, text field"Grading note: This command may be expected to fail. This result simply indicates that it did not yield support.Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
VoiceOver (macOS) | Safari | yes | - Result: (fail)
Test Case: open the dialog using Activate Button (VO + space)- Launch VoiceOver (macOS) and Safari.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "next_button"
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "VO + space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "street, edit text with autofill menu"Grading note: This command may be expected to fail. This result simply indicates that it did not yield support.Result: (pass)Test Case: navigate to modal container using Exit an object (such as an iframe) (VO + Shift + Up Arrow)- Launch VoiceOver (macOS) and Safari.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "next_button"
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "VO + space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: navigate to the modal container
- Using the command: "VO + Shift + Up Arrow" (Exit an object (such as an iframe))
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: target
- virtual cursor location: target
is the expectation met?Output: "out of add delivery address, web dialog, with 9 items" |
Windows Speech Recognition | Edge | not applicable | - |
Windows Speech Recognition | Chrome | not applicable | - |
Windows Voice Access | Edge | not applicable | - |
Windows Voice Access | Chrome | not applicable | - |
Windows Keyboard | Chrome | not applicable | - |
Windows Keyboard | Firefox | not applicable | - |
Windows Keyboard | Edge | not applicable | - |
Mac Keyboard | Chrome | not applicable | - |
Mac Keyboard | Safari | not applicable | - |
iOS Keyboard | Safari | not applicable | - |
Android Keyboard | Chrome | not applicable | - |
Extended Support for: dialog role: convey its role
These are less common combinations
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | IE | not applicable | - |
Dragon Naturally Speaking | Firefox | not applicable | - |
JAWS 2021.2012.57 | IE 11 | yes | - Result: (pass)
Test Case: open the dialog using Activate Button (Enter or Space)- Launch JAWS and IE.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- Using the command: "Enter or Space" (Activate Button)
- Observe: dialog will open and focus will be moved to the target
- Ensure AT location after executing the command
- Target: `*[role="dialog" aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: "add delivery address, dialog, street: edit, type in text"Result Notes: The name and role were conveyed when entering the dialog for the first time. The modal state was not |
Narrator | Firefox | unknown | - |
Narrator | Chrome | unknown | - |
Narrator | IE | unknown | - |
NVDA | IE | unknown | - |
TalkBack | Firefox | unknown | - |
Voice Access (Android) | Firefox | not applicable | - |
VoiceOver (iOS) | Chrome | unknown | - |
VoiceOver (macOS) | Chrome | unknown | - |
VoiceOver (macOS) | Firefox | unknown | - |
Orca | Chrome | unknown | - |
Voice Control (MacOS) | Chrome | not applicable | - |
Voice Control (MacOS) | Firefox | not applicable | - |
Mac Keyboard | Firefox | not applicable | - |
Android Keyboard | Firefox | not applicable | - |
Back to topExpectation for the dialog role: convey the boundaries of the dialog
This expectation is from the dialog role feature.
Rationale:
Users need to know when they enter and exit a dialog.
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Examples:
- Screen readers might announce something like "entering dialog" or "leaving dialog".
- Screen readers might imply the boundary by obscuring outside content when aria-modal=true is also present.
Grading method:
All of the listed commands must pass for the expectation to pass.
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | Chrome | not applicable | - |
JAWS | Chrome | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (Up arrow)- Launch JAWS and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
JAWS | Edge | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (Up arrow)- Launch JAWS and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
JAWS | Firefox | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (Up arrow)- Launch JAWS and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
Narrator | Edge | none | - Result: (fail)
Test Case: navigate forward into open dialog using Jump to next item (scan mode) (Down arrow)- Launch Narrator and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space Bar" (Activate Item (primary action))
- Ensure AT location after executing the command
- Target: `*[role="dialog"]`
- keyboard focus location: within target
- virtual cursor location: within target
set mode to browseissue command- summary: navigate backwards out of the open dialog
- Using the command: "Up arrow" (Jump to previous item (scan mode))
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog"]`
- keyboard focus location: before target
- virtual cursor location: before target
issue command- summary: navigate forwards into the open dialog
- Using the command: "Down arrow" (Jump to next item (scan mode))
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog"]`
- keyboard focus location: within target
- virtual cursor location: within target
is the expectation met?Output: elements outside the modal were foundResult: (fail)Test Case: attempt to navigate backwards to content behind the open modal using Jump to previous item (scan mode) (Up arrow)- Launch Narrator and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space Bar" (Activate Item (primary action))
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Up arrow" (Jump to previous item (scan mode))
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: elements outside the modal were foundGrading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
NVDA | Chrome | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (up arrow)- Launch NVDA and Chrome.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
NVDA | Edge | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (up arrow)- Launch NVDA and Edge.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
NVDA | Firefox | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (up arrow)- Launch NVDA and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
Orca | Firefox | none | - Result: (fail)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (up arrow)- Launch Orca and Firefox.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: content outside could be found ("add delivery address push button")Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
TalkBack | Chrome | none | - Result: (fail)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (Swipe left (or alt+left arrow))- Launch TalkBack and Chrome.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe right (or alt+right arrow)" (Read next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "double tap (or alt+enter)" (Activate button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Swipe left (or alt+left arrow)" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: before target
is the expectation met?Output: "add delivery address, button"Result: (fail)Test Case: navigate forward into open dialog using Read next item (Swipe right (or alt+right arrow))- Launch TalkBack and Chrome.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe right (or alt+right arrow)" (Read next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog"]`
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "double tap (or alt+enter)" (Activate button)
- Ensure AT location after executing the command
- Target: `*[role="dialog"]`
- virtual cursor location: within target
issue command- summary: navigate backwards out of the open dialog
- Using the command: "Swipe left (or alt+left arrow)" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog"]`
- virtual cursor location: before target
issue command- summary: navigate forwards into the open dialog
- Using the command: "Swipe right (or alt+right arrow)" (Read next item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog"]`
- virtual cursor location: within target
is the expectation met?Output: "page, end of example, splitter"Grading Note: There is no known/documented support. There may still be support for this expectation, but it is undocumented. If this is the case, please report this issue. |
Voice Access (Android) | Chrome | not applicable | - |
Voice Control (iOS) | Safari | not applicable | - |
Voice Control (MacOS) | Safari | not applicable | - |
VoiceOver (iOS) | Safari | partial | - Result: (partial)
Test Case: attempt to navigate backwards to content behind the open modal using Previous item (Swipe Left)- Launch VoiceOver (iOS) and Safari.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe Right" (Next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Double tap" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Swipe Left" (Previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: before target
is the expectation met?Output: "street, text field"Result Notes: partial because some content outside the modal was found but obviously not all contentResult: (partial)Test Case: attempt to navigate forwards to content behind the open modal using Next item (Swipe Right)- Launch VoiceOver (iOS) and Safari.
- Navigate to the test page.
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "Swipe Right" (Next item)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: button
issue command- summary: dialog will open and focus will be moved to the target
- Using the command: "Double tap" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: within target
issue command- summary: attempt to navigate forwards past the end of the dialog
- Using the command: "Swipe Right" (Next item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- virtual cursor location: after target
is the expectation met?Output: content was not found except for some quotation marksResult Notes: partial because some content outside the modal was found but obviously not all content |
VoiceOver (macOS) | Safari | yes | - Result: (pass)
Test Case: navigate to modal container using Exit an object (such as an iframe) (VO + Shift + Up Arrow)- Launch VoiceOver (macOS) and Safari.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "next_button"
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "VO + space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: navigate to the modal container
- Using the command: "VO + Shift + Up Arrow" (Exit an object (such as an iframe))
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: target
- virtual cursor location: target
is the expectation met?Output: "out of add delivery address, web dialog, with 9 items" |
Windows Speech Recognition | Edge | not applicable | - |
Windows Speech Recognition | Chrome | not applicable | - |
Windows Voice Access | Edge | not applicable | - |
Windows Voice Access | Chrome | not applicable | - |
Windows Keyboard | Chrome | not applicable | - |
Windows Keyboard | Firefox | not applicable | - |
Windows Keyboard | Edge | not applicable | - |
Mac Keyboard | Chrome | not applicable | - |
Mac Keyboard | Safari | not applicable | - |
iOS Keyboard | Safari | not applicable | - |
Android Keyboard | Chrome | not applicable | - |
Extended Support for: dialog role: convey the boundaries of the dialog
These are less common combinations
AT | Browser | Has Support | Output |
---|
Dragon Naturally Speaking | IE | not applicable | - |
Dragon Naturally Speaking | Firefox | not applicable | - |
JAWS 2021.2012.57 | IE 11 | yes | - Result: (pass)
Test Case: attempt to navigate backwards to content behind the open modal using Read previous item (Up arrow)- Launch JAWS and IE.
- Navigate to the test page.
- set mode to auto (do not explicitly change the mode)
- issue command
- summary: navigate forward to the button to open the dialog
- Using the command: "b" (Next button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: button
- virtual cursor location: button
- issue command
- summary: dialog will open and focus will be moved to the target
- Using the command: "Enter or Space" (Activate Button)
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: within target
- virtual cursor location: within target
issue command- summary: attempt to navigate backwards past the start of the dialog
- Using the command: "Up arrow" (Read previous item)
- You may need to issue this command multiple times
- Ensure AT location after executing the command
- Target: `*[role="dialog" *[aria-modal="true"]`
- keyboard focus location: before target
- virtual cursor location: before target
is the expectation met?Output: not able to move outside of the modal |
Narrator | Firefox | unknown | - |
Narrator | Chrome | unknown | - |
Narrator | IE | unknown | - |
NVDA | IE | unknown | - |
TalkBack | Firefox | unknown | - |
Voice Access (Android) | Firefox | not applicable | - |
VoiceOver (iOS) | Chrome | unknown | - |
VoiceOver (macOS) | Chrome | unknown | - |
VoiceOver (macOS) | Firefox | unknown | - |
Orca | Chrome | unknown | - |
Voice Control (MacOS) | Chrome | not applicable | - |
Voice Control (MacOS) | Firefox | not applicable | - |
Mac Keyboard | Firefox | not applicable | - |
Android Keyboard | Firefox | not applicable | - |
Back to topDates and Versions of tested combinations
AT | AT Version | Browser | Browser version | OS version | Date tested |
---|
JAWS | 2023.2212.23 | Chrome | 108 | Windows 11 version 22h2 | 2023-01-13 |
JAWS | 2022.2110.36 | Edge | 108 | Windows 11 version 22h2 | 2023-01-13 |
JAWS | 2021.2012.57 | Firefox | 108 | Windows 11 version 22h2 | 2023-01-13 |
Narrator | Windows 11 version 22h2 | Edge | 108 | Windows 11 version 22h2 | 2023-01-13 |
NVDA | 2022.4 | Chrome | 108 | Windows 11 version 22h2 | 2023-01-13 |
NVDA | 2022.4 | Edge | 108 | Windows 11 version 22h2 | 2023-01-13 |
NVDA | 2022.4 | Firefox | 108 | Windows 11 version 22h2 | 2023-01-13 |
Orca | 42.0 | Firefox | 108 | Ubuntu 22.04 | 2023-01-13 |
TalkBack | 13.5 | Chrome | 108 | 12 | 2023-01-13 |
VoiceOver (iOS) | 16.2 | Safari | 16.2 | 16.2 | 2023-01-13 |
VoiceOver (macOS) | 13.1 | Safari | 6.1 | 13.1 | 2023-01-13 |
History
- 2019-08-13 Test created
- 2021-02-03 re-tested all core versions, no significant changes were found
- 2021-08-07 Added Narrator results for NVDA and JAWS, updated NVDA+Chrome results.
- 2021-12-05 Added missing aria-modal results for JAWS+Chrome, JAWS+Edge
- 2022-01-13 Updates results