Open Bug 406933 Opened 17 years ago Updated 2 years ago

Move button.xml accesskey handling into nsEventStateManager

Categories

(Core :: DOM: UI Events & Focus Handling, enhancement)

enhancement

Tracking

()

People

(Reporter: MatsPalmgren_bugz, Unassigned)

Details

(Keywords: access)

Attachments

(2 files)

Follow up from bug 349251 12/13. As Neil noted, button.xml accesskey handling needs to deal with hidden elements, radiobuttons and checkboxes etc. http://bonsai.mozilla.org/cvsblame.cgi?file=mozilla/toolkit/content/widgets/button.xml&rev=1.21&root=/cvsroot&mark=96-116,167-194#96 Instead of having two possibly diverging ways of accesskey handling I think we should remove the code in button.xml and make ESM handle this case too.
Attached patch wipSplinter Review
Something like this. We need to avoid the case where a text input, list or other element that handles plain keys has focus though... Neil, would something like this work do you think?
To handle the case where an element handles keys I would have thought it best to handle unshifted access keys in PostHandleEvent processing. I don't see why the processing should be limited to chrome, so I think the best move would be to pass the modifier mask for the current container, otherwise I was thinking you could just pass in sChromeAccessModifier.
Attached patch wipSplinter Review
This seems to work mostly, although not widgets call preventDefault() :-(
Component: Event Handling → User events and focus handling
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: