Menu Enhancements

PrimeFaces 3.3 gets major menu component enhancements, most of the work is related to internal apis and refactoring. We’ve unified repetitive behaviors like tiered menus, overlay positioning by introducing client side inheritance.

External changes are;

- Tiered and Slide menu types have now their own components named tieredMenu and slideMenu.
- Added autoDisplay mode to tiered menus, by default submenus are displayed with mouseover, setting autoDisplay mode to false requires a click.
- Tiered Context Menus are now supported.
- Overlay slide and tiered menus are now supported.
- SlideMenu is a complete rewrite of menu with slide type.
- Menus are now not hidden when mouse is out from the submenus, we’ve aligned the behavior with OS menus and menubars to make this closer to common user experience.

Check out PrimeFaces Labs to see these in beta action!

For those who wonder the release date of 3.3… let’s say when it is done ;) We are very busy with maintenance!

13 thoughts on “Menu Enhancements

    • RTL has a huge impact on components and cannot always be done with CSS. So I doubt this will be done if PF private/free time and suspect it needs commercial funding of a big client.

  1. Woudl it be nicer and more flexible to set an option to control the auto hiding behavior of the menu?

    An extra click seems anti-web to me, do not know it is just me :|

  2. Hmmm very nice, can’t wait for 3.3 to be released!

    Chelsea!!!! kkkkkkkkk…

  3. I would appreciate it, if you would do more bugfixing than reimplementing existing components/developing new components. There are a LOT of issues in your bugtracker that need to be inspected and fixed.

  4. You have done a good job, Cagatay. Congrats!

    Saidly, but there isn’t still multi-column menu as context menu (aka mega menu w/o bar). You have now an example of “tiered context menu” and you can add “mega context menu” or similar, of course. But it’s not good in my opinion to replicate already existing menus as context menus. Much better (you know my proposal) would be to drop context menu at all and add an attribute event=”contexmenu” or behavior=”contextmenu” to already existing menus. This attribute would change their behaviors and show p:menu, p:tieredMenu and p:megaMenu as context menu (per right mouse click). Right mouse click is only one difference between existing context menu and all other menus. Right? Why don’t specify this behavior per attribute? Should I create a feature request?

    By the way, there is an ugly bug in the MegaMenu showcase. If you click a couple of time on “Default MegaMenu” and move mouse over “Click Trigger Menu”, the last one (“Click Trigger Menu”) opens submenus / menuitems per mouse over. Look “Click Trigger Menu” starts to behave like “Default MegaMenu” and doesn’t get close at all. Should I create an issue?

    Thanks for your effort. Keep up your great job.

  5. Really great work! Compliments!

    I just would like to add here a suggestion that I hope will be of interest:
    Slide menu is great and shows the back button on the bottom side, but IMHO a very important feature is missing, especially when you have deep menus, namely a Breadcrumb in the upper side to remind the user where it is in the menu hierarchy!!!