HomePhabricator

Refactor: Simplify and standardize menu definitions

Tags
None
Referenced Files
None
Subscribers
None

Description

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

Details