Opened 7 years ago

Closed 7 years ago

Last modified 5 years ago

#15709 closed defect (fixed)

[regression] Button_a11y: Enter key stops working in IE9

Reported by: haysmark Owned by: bill
Priority: blocker Milestone: 1.8
Component: Dijit Version: 1.8.0b1
Keywords: dohfail Cc: bill, Douglas Hays
Blocked By: Blocking:

Description

If you run the dijit form tests in IE9 in the DOH runner, you will notice "dijit.form.DropDownButton::enter opens menu" fails.

To manually reproduce this failure:

  1. Open http://archive.dojotoolkit.org/nightly/checkout/dijit/tests/form/test_Button.html in IE9
  2. Tab to Edit
  3. Press Enter. The popup will open as expected.
  4. Click once on the text, "Buttons can do an action, display a menu, or both:".
  5. Tab to the Edit button again.
  6. Press Enter. The popup will not open this time.

If you subsequently refresh the page, the Enter button will still be broken. You will have to close the tab and reopen it to fix it.

Change History (7)

comment:1 Changed 7 years ago by haysmark

Keywords: dohfail added

comment:2 Changed 7 years ago by Douglas Hays

Cc: bill Douglas Hays added
Component: Dijit - FormEvents
Milestone: tbd1.8
Owner: changed from Douglas Hays to Kris Zyp
Priority: undecidedblocker
Status: newassigned
Summary: Button_a11y: Enter key stops working in IE9[regression] Button_a11y: Enter key stops working in IE9
Version: 1.7.31.8.0b1

Refs #14954. ENTER is no longer triggering Button clicks on IE9 starting with [29144].

comment:3 Changed 7 years ago by bill

Component: EventsDijit
Owner: changed from Kris Zyp to bill

I don't know why it's failing but might as well switch _HasDropDown to use dojo/on and avoid the issue, since we will need to do that for 2.0 anyway.

comment:4 Changed 7 years ago by bill

Resolution: fixed
Status: assignedclosed

In [29331]:

Fix ENTER key click on IE9 (for _HasDropDown) as well as SPACE key click on FF (for a11yclick).

Switched from synthetic dojo/_base/connect keypress event to native keydown event. In practical terms, that means that the dropDownWidget.handleKey() callback from _HasDropDown now gets passed an event where keyCode is set rather than charOrCode, and you check for a space character as evt.keyCode == keys.SPACE rather than evt.charOrCode == " ".

Fixes #15709 !strict.

comment:5 Changed 6 years ago by haysmark

This was working in 1.6 and 1.7 branches so doesn't need to be backported.

comment:6 Changed 6 years ago by bill

OK, good. See also #14954 and #16570 though.

comment:7 Changed 5 years ago by Bill Keese <bill@…>

In c8f651b2100df8d0b433174a5f31b5b86b0f7774/dijit:

Error: Processor CommitTicketReference failed
Unsupported version control system "git": Can't find an appropriate component, maybe the corresponding plugin was not enabled? 
Note: See TracTickets for help on using tickets.