Added support for ace:multiColumnSubmenu to ace:menu at revision 37291.
Multi-column submenus are now supported in tiered and plain menus, and they are displayed as flyout submenus in every case (even if the type is plain, since it wouldn't make sense otherwise). Support for a special case was also added: the case when the type is plain and the menu only contains a single ace:multiColumnSubmenu (which can have any number of children of its own), which is the use case in the JIRA description. In this case, the multi-column submenu BODY will be displayed when the menu is triggered (i.e. when position=dynamic) or simply when visible (i.e. position=static). In other words, in this special case, the multi-column submenu label WON'T be displayed (otherwise, the user would have to hover/click on the label to display the multi-column submenu body).
Here's an example of the latter use case:
<h:commandButton id="menu" value="Simple Multi-Column Menu" />
<ace:menu position="dynamic" trigger="menu" my="left top" at="left bottom" triggerEvent="mouseenter">
<ace:multiColumnSubmenu label="multi">
<ace:menuColumn>
<ace:submenu label="Home 1">
<ace:menuItem value="Home 1-1"/>
</ace:submenu>
</ace:menuColumn>
<ace:menuColumn>
<ace:submenu label="Home 2">
<ace:menuItem value="Home 2-1"/>
</ace:submenu>
</ace:menuColumn>
</ace:multiColumnSubmenu>
</ace:menu>
The following code renders and empty menu:
<ace:menu id="home-nav" position="dynamic" trigger="home" my="left top" at="left bottom" triggerEvent="mouseenter">
<ace:multiColumnSubmenu>
<ace:menuColumn>
<ace:submenu label="Home 1">
<ace:menuItem value="Home 1-1"/>
</ace:submenu>
</ace:menuColumn>
<ace:menuColumn>
<ace:submenu label="Home 2">
<ace:menuItem value="Home 2-1"/>
</ace:submenu>
</ace:menuColumn>
</ace:multiColumnSubmenu>
</ace:menu>