Ticket #5767 (closed bug: fixed)

Opened 4 years ago

Last modified 3 years ago

On open, the first tabbable element inside the dialog was never being focused in favor of the dialog container.

Reported by: ajcrews Owned by:
Priority: major Milestone: 1.8.3
Component: ui.dialog Version: 1.8.2
Keywords: focus tabbable Cc:
Blocking: Blocked by:

Description

Within the "open" method in ui.dialog, there is an attempt to "set focus to the first tabbable element in the content area or the first button. if there are no tabbable elements, set focus on the dialog itself".

This was being accomplished using the jQuery "add" method, and was working up until jQuery 1.4.x, since: "As of jQuery 1.4 the results from .add() will always be returned in document order" ( http://api.jquery.com/add).

Also, in Firefox 3.6.x, the dialog will not show if a tabbable element is focused in the "open" method.

Change History

comment:1 Changed 4 years ago by ajcrews

Related tickets: #4421, #4675

comment:3 in reply to: ↑ 2 Changed 4 years ago by ajcrews

Replying to ajcrews:

Fixed:  http://github.com/ajcrews/jquery-ui/commit/74157f83906a23814cdf6d13c20d83253c8b41bc

I had code in place to handle a race condition I was unaware of - the race condition is caused by setting the "show" option to an animation like "fade". I have addressed that issue as well.

Related tickets, bundled together: #4421, #4675, #4731

Fixed:  http://github.com/ajcrews/jquery-ui/commit/1d1de7fc70501c25c6ff3de204c04078602baa04

comment:6 Changed 4 years ago by scott.gonzalez

  • Priority changed from minor to major
  • Status changed from new to closed
  • Resolution set to fixed
  • Milestone changed from TBD to 1.9

Fixed in  64d90b4.

comment:7 Changed 4 years ago by scott.gonzalez

  • Milestone changed from 1.9 to 1.8.3

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

Dialog: Adjusted logic for finding the first tabbable element. Fixes #5767 - On open, the first tabbable element inside the dialog was never being focused in favor of the dialog container.

Changeset: 64d90b4a710d520a44408ccfa8df1100b0b95b4d

Note: See TracTickets for help on using tickets.