Open Bug 302060 Opened 14 years ago Updated 6 years ago

keyboard navigation of menulists can select disabled menu items

Categories

(Toolkit :: XUL Widgets, defect)

x86
Windows XP
defect
Not set

Tracking

()

People

(Reporter: mscott, Unassigned)

References

Details

Attachments

(1 file)

629 bytes, application/vnd.mozilla.xul+xml
Details
If you have a menu list and some of the items are disabled, focus the menu list
and then using the arrow keys to select menu items (note the menu poup is closed
at this point), we will select these disabled items.

If the menu popup was open you would not be allowed to select these disabled
menu items. But keyboard navigation with a closed popup does allow you to select
them.
Attached file Test case
I'm not able to select the disabled items in that testcase. The keyboard should be able to highlight the item but not set it as the current value, which is the behaviour I am seeing.

Note that if you are using a gtk(2) build you will need to set ui.skipNavigatingDisabledMenuItem to 0 to override look and feel.
(In reply to comment #2)
> I'm not able to select the disabled items in that testcase. The keyboard should
> be able to highlight the item but not set it as the current value, which is the
> behaviour I am seeing.

How did you check the selected value ?

It seems I can reproduce this bug with the testcase:

[Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.9b3pre) Gecko/2008020102 SeaMonkey/2.0a1pre] (nightly) (W2Ksp4)

Case 1: (reference)
Open the dropdown, try to select a disabled item with the mouse:
you can't.
That's fine :-)

Case 2: (working, but could be improved ?)
Open the dropdown, highlight a disabled item with the up/down arrow, press Enter:
the dropdown closes, the selection remains at its initial value.
No issue with the value. But shouldn't Enter be ignored ? And the user should use Escape in this case ? :-|

Case 3: (this bug as initially reported)
Do not open the dropdown, select a disabled item with the up/down arrow:
the menulist |label| nodeValue is immediately updated. (As seen with DomI.)
This is wrong :-(
Flags: blocking1.9?
Version: unspecified → Trunk
Flags: wanted1.9+
Flags: wanted1.8.1.x?
Flags: blocking1.9?
Flags: blocking1.9-
Flags: wanted1.8.1.x?
See Also: → 953902
You need to log in before you can comment on or make changes to this bug.