Closed Bug 281538 Opened 20 years ago Closed 19 years ago

No focus or selection events fired as user arrows through download manager

Categories

(Toolkit :: Downloads API, defect, P2)

x86
All
defect

Tracking

()

RESOLVED FIXED

People

(Reporter: aaronlev, Assigned: aaronlev)

References

Details

(Keywords: access)

Attachments

(1 file, 1 obsolete file)

No focus or selection events fired as user arrows through download manager. At the very least we need to fire DOMMenuItemActive events for each item's element if we don't want to use real focus. See other examples in the Mozilla code that do this. The current lack of events breaks screen readers. Currently the say nothing as the user arrows through the list.
Priority: -- → P2
Depends on: 288499
Depends on: 285584
No longer depends on: 288499
Assignee: bugs → doronr
Blocks: deera11y
The latest patch in bug 285584 does send DOMMenuItemActive events.
The upcoming patch will fix richlistbox so that 1) accessible objects are created for the list and the list items. 2) focus events are fired for the list items 3) accessible name is supported for each list item 4) home/end keys are supported
I suggest a spinnoff bug to implement the rest of nsIDOMXULSelectControlItemElement nsIDOMXULSelectControlElement. Are we ever going to implement seltype="multiple" for this? If we do, at that point we'll need nsIDOMXULMultiSelectControlElement as well. In general I think we should implement complete interfaces when we add a new widget. It's important for accessibility at least. That's how we get labels and states.
Attachment #186929 - Flags: review?(mconnor)
Attachment #186929 - Flags: review?(mconnor)
Assignee: doronr → aaronleventhal
Attachment #186929 - Attachment is obsolete: true
Status: NEW → ASSIGNED
Attachment #186930 - Flags: review?(mconnor)
Comment on attachment 186930 [details] [diff] [review] Minor change -- use this.control instead of this.parentNode to get to listbox > <handler event="contextmenu" phase="capturing"> > <![CDATA[ > // This needed to be called before the contextmenu gets shown to handle > // someone rightclicking on an unselected item > if (event.target == this) { >- this.parentNode.selectedItem = this; >+ var listbox = this.control; >+ if (listbox) { >+ listbox.selectedItem = this; >+ } The brackets aren't necessary here, please drop them, and the other places where this is done. And man, how'd I miss the indenting here? We've got some weird indentation all around the CDATA chunks throughout the patch (mostly inconsistent). Can you fix this up a bit while you're in here? (doesn't have to be global, just bits you've touched) Yes, multi-select needs to be added for this at some point. Not a blocker, but a useful thing to have for the binding. Doron was supposed to file a bug on this, can you add comments about what needs to be included for the accessibility side when that gets implemented? r=me with the cleanup noted
Attachment #186930 - Flags: review?(mconnor) → review+
Comment on attachment 186930 [details] [diff] [review] Minor change -- use this.control instead of this.parentNode to get to listbox Will fix whitespace and extra { }
Attachment #186930 - Flags: approval-aviary1.1a2?
298371 is the bug for multi-select
Attachment #186930 - Flags: approval-aviary1.1a2? → approval-aviary1.1a2+
Forgot to mark this fixed.
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Product: Firefox → Toolkit
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: