Opened 10 years ago

Closed 7 years ago

Last modified 7 years ago

#10721 closed defect (fixed)

MenuBar: hovering MenuBarItem should make previously opened menu disappear immediately

Reported by: Pete Smith Owned by: bill
Priority: low Milestone: 1.9
Component: Dijit Version: 1.4.0
Keywords: Cc:
Blocked By: Blocking:

Description (last modified by bill)

I have a menubar, with a combination of PopupMenuBarItems and MenuBarItems. If I hover over the popup menu bar item, a menu appears. If I hover over the adjoining MenuBarItem, the menu does not come down right away as it should. This does work if both items are popupmenuBarItems. I have the need to combine buttons as well as popup menu items on the same menubar, which this affords.

To Reproduce:

http://download.dojotoolkit.org/release-1.4.1/dojo-release-1.4.1/dijit/tests/test_Menu.html

  1. Click "Help" Menu. See popup come out.
  2. Hover over "Disabled" (doesn't matter enabled or disabled). The menu has a delay in coming down.

It works perfectly if you go to ANOTHER popup menu. If you hover over a menuBar Item, the menu from the previous should knock down immediately.

Change History (6)

comment:1 Changed 10 years ago by bill

Description: modified (diff)

Hmm, when you say "come down" and "Knock down" do you mean "disappear"?

comment:2 Changed 9 years ago by bill

Description: modified (diff)
Milestone: tbdfuture
Summary: MenuBar Usability Enhancement - Popup MenuBar Buttons and MenuBar Items.MenuBar: hovering MenuBarItem should make previously opened menu disappear immediately

Hmm, you must be talking about the delay in the help menu disappearing.

comment:3 Changed 7 years ago by bill

Priority: highlow

comment:4 Changed 7 years ago by bill

Milestone: future1.9
Owner: set to bill
Status: newassigned

Note that for vertical menus, the delay is intentional, because if the user slides diagonally from the PopupMenuItem to the popup Menu, he may hit other siblings of the PopupMenuItem along the way.

For MenuBar though I don't see a compelling reason to do the delay.

comment:5 Changed 7 years ago by bill

Resolution: fixed
Status: assignedclosed

In [30895]:

For active MenuBars, open and close submenus immediately. I.E. even if the previously hovered/focused MenuBarItem didn't have a menu, show the menu for the new PopupBarMenu immediately. And conversely, even if the new MenuBarItem doesn't have a menu, close the old menu immediately. Fixes #10721 !strict.

Also converted _markActive(), _markInactive(), and isActive flag to standard "activated" property with custom setter. Didn't call it "active" because that's already used by _CssStateMixin.

comment:6 Changed 7 years ago by bill

In [30897]:

Just set popupDelay to 0 instead of having to override onItemHover(), refs #10721 !strict.

Note: See TracTickets for help on using tickets.