Opened 6 years ago

Closed 5 years ago

#7861 closed bug (fixed)

Dialog: default accessibility

Reported by: ezufelt Owned by:
Priority: minor Milestone: 1.10.0
Component: ui.dialog Version: 1.8.16
Keywords: a11y Cc:
Blocked by: Blocking:

Description (last modified by Jörn Zaefferer)

Firefox 8.0 JAWS 13 Dialog demos 1.9pre

Problems

  1. JAWS reports 'Basic dialog dialog. To navigate use tab. Application mode on.'. Using arrow keys I could not navigate, pressing tab once focus went to close button and application mode turned off.
  1. Close button does not appear to receive focus when dialog appears.
  1. Application mode should not be necessary for a non-modal dialog, we are not intending to sandbox users from rest of UI. If the intent is to sandbox users from rest of UI then application mode should be turned on using role="dialog" on wrapper for dialog and role="document" on direct descendant wrapper.

Change History (9)

comment:1 Changed 6 years ago by Scott González

Keywords: a11y added
Status: newopen

comment:2 Changed 6 years ago by ezufelt

Another problem reported is that focus does not appear to return to the element that triggered the dialog when the dialog is dismissed.

comment:3 Changed 5 years ago by Scott González

#8534 is a duplicate of this ticket.

comment:4 Changed 5 years ago by Scott González

Milestone: 1.9.01.10.0

comment:5 Changed 5 years ago by Jörn Zaefferer

Description: modified (diff)

comment:6 Changed 5 years ago by Jörn Zaefferer

Testing agains the dialog branch here: https://github.com/jquery/jquery-ui/pull/794

"Another problem reported is that focus does not appear to return to the element that triggered the dialog when the dialog is dismissed." - this is fixed. We now have code in place that restores focus to the opener.

  1. Looking at the default demo, this seems like it got worse. JAWS switches to application mode but unlike the modal demos, doesn't let me use cursor keys to read text elements.
  1. This is still not the case and by design. If there's nothing inside the dialog's content to focus, the dialog itself is focused. The user can then tab to the close button.
  1. Related to the issue with the first item. Need to figure out what to do here. Since we do the focus-trapping for both modal and non-modal dialogs, we probably want the sandboxing for non-modals as well.

comment:7 Changed 5 years ago by Jörn Zaefferer

Telling JAWS to permanently stick to virtual cursor mode (Insert+Z twice) enables text navigation within the dialog. That shouldn't be necessary.

comment:8 Changed 5 years ago by Jörn Zaefferer

Setting focus to a tabbable element inside the dialog fixed the issue with JAWS need reading anything for the default dialog demo. Contrary to what I wrote before, if there's nothing else, focus should go to the close button. Fixed in https://github.com/jquery/jquery-ui/commit/92b8a41164712e1bb2edc1a06afa37b9d9db0240

To test, see http://view.jqueryui.com/dialog/demos/dialog/default.html

Note: See TracTickets for help on using tickets.