FYI, my current plan is to add an "immediate" flag to
MenuPopup#close() and add a MenuPopupStateListener interface that
includes preview, veto, and close events that include this argument.
That will allow the menu skin to decide whether or not to run the
transition. When a menu popup is closed as a result of the menu bar
activating another menu, close(true) will be called, and the menu
won't fade. In all other cases, close(false) will be called, and the
menu (and all sub-menus) will fade out.
If anyone has any comments or other suggestions, please let me know.
On Aug 31, 2009, at 10:29 AM, Greg Brown wrote:
BTW, the menu fading issue Todd identified is a pain to fix. :-)
We can't just fade a menu whenever it closes, because that breaks
the UE when a menu is opened from a menu bar and the user mouses
over another menu bar item. In that case, we want to close the menu
immediately. However, in all other cases we want it to fade.
Unfortunately, we don't currently have any way to distinguish
between these two cases. I am currently thinking about the best way
to introduce support for this, but suggestions are welcome.