Refactor: Simplify and standardize menu definitions
- Standardise the menu markup. This means all menus in Vector will now
be wrapped in a div and will have a heading.
- All menus now have the vector-menu class. Styles specific to personal tools
are moved to layout since these are concerned with placement.
- The ul class will always have menu class.
- emptyPortal class is generalised into vector-menu-empty for consistency
with other classes and moved from common.less into Menu.less
- Standardise hooks - BaseTemplateAfterPortlet can now be run on any
menu.
Changes to HTML:
- lang and dir attributes are moved from the h3 up to the div element
.vectorTabs, .portal(s) and #p-personal now has hidden span element inside h3
- for non portals ul.menu" is now wrapped in a div.vector-menu-content
This change does impact the following CSS selectors which will need to be updated:
I see no matches for these selectors in code search.
#p-variants > ul #p-namespaces > ul #p-personal > ul #p-views > ul #p-cactions > ul
Using global-search.toolforge.org I see one match
for p-variants, 26 for p-namespaces, 30 for p-personal,
36 for p-views and 7 for p-cactions. I see this as acceptable
breakage provided a user notice is sent out which it has been
(T252447)
Bug: T249372
Change-Id: Id59234aa6b822a24848386bdc04d8d7ed37ca145