I am using the latest Icarus (1.1) IcarusMenu in the form
Code: Select all
<pi:menu widgetVar="MatrixMenu" id="panelMenu_#{menubean.menuBarActiveItem.id}" model="#{menubean.panelMenu}"/>
If the menu has more than ~9 top-level entries, the menu style breaks (subsequent menu items have wrong CSS style class "sidebar-submenuitem" instead of "sidebar-menuitem" which looks broken) due to IcarusMenuRenderer:70 and IcarusMenuRenderer:91 isParentRootMenu(String elementId) method calls in IcarusMenuRenderer:178.
This is due to this method, where the element id is checked for its length (something like return (elementId.trim().length() == 1)), which returns wrong results for elements having an id > 9.
This can be easily reproduced by generating a dynamic menu using the specified default menu model and primefaces menu item classes, where there are more than 9 top-level menu items.