Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#3042 closed defect (fixed)

[PopupManager] onMouse prevents popup from closing

Reported by: haysmark Owned by: bill
Priority: high Milestone: 0.9beta
Component: Dijit Version: 0.9
Keywords: Cc:
Blocked By: Blocking:

Description

onMouse incorrectly calls stack[0].close; it should call dijit.util.PopupManager?.close(true).

The effect of this defect is that popups cannot close unless they provide code that hides themselves, which PopupManager?.close already provides, and is supposed to provide.

Getting this to work will be important for migrating AutoCompleter? to use PopupManager? entirely.

Change History (4)

comment:1 Changed 12 years ago by bill

Status: newassigned

Ah you are right. PopupManager? shouldn't require an close() function on the widget. We do need an (optional) onClose() callback though, to tell popups when they are closing because in Menu's case it needs to do some cleanup. I will fix.

comment:2 Changed 12 years ago by bill

Resolution: fixed
Status: assignedclosed

(In [8656]) Fix PopupManager? so that it doesn't depend on popup implementing a close() function, thus allowing any widget to be popped-up (as per the original design goal). Fixes #3042 but need some more work on Menu; I want to move code from MenuItem? up into Menu.

comment:3 Changed 12 years ago by bill

(In [8667]) General refactor of menu, moving controller logic from MenuItem? to Menu. Decreases size by 100 lines. Refs #3042.

comment:4 Changed 12 years ago by bill

(In [8668]) Fix drop down menus from buttons. Not sure if the design is right (maybe we should only be attaching to onClose() between the time we open the menu and the time it closes?), but anyway it's working. I removed some home-grown connect logic in favor of plain dojo.connect.

Refs #3042.

Note: See TracTickets for help on using tickets.