[MVC] - Context switcher
Problem to solve
Users need an easy way to switch between groups, projects, and other sections within GitLab. The current Main Menu provides this capability, but it isn't intuitive what lives within the menu, as well as it is cumbersome to navigate options.
Proposal
Introduce a new "context switcher", which will replace the current context header in the sidebar and act as a convenient way for users to switch between objects and sections within GitLab.
Implementation Guide
Resources
- Figma File
- Prototype
- Codepen example (for animation)
Criteria
-
Styling of context switcher should align to designs below -
Include persistent links at the top (Your work, Explore, Admin (if Administrator)) !114945 (merged) -
Utilize the current Frequent Projects/Groups that we store today for users, displayed as options as seen in the design (Projects - max 5, Groups - max 3) -
When there are no Frequent Projects or Groups, include an empty state message (see design) -
Provide a link to "View all projects" and "View all groups" at the end of each "Frequent" listing
When clicking on the context switcher...
-
Toggle the menu with animation (see Codepen). -
Toggle the chevron icon based on it's state -
Update the styling of the context switcher (background and chevron color) !114643 (merged) -
If opening the context switcher menu, focus the search field !114643 (merged)
When searching within the context switcher...
-
Hide the persistent links at the top !114491 (merged) -
Show results for Projects and Groups under respective headings !114491 (merged) - [-]
Include the result count for Projects and Groups within their headingWe have decided to not do this for now. -
Limit the amount of matches for Projects and Groups to each be 20 (same as today in Main Menu) !114491 (merged) -
Allow the Project/Group result sections to be collapsable (for instance, in case a user only cares about Groups) !114945 (merged) -
When there are no matches for Projects or Groups, include a "No matches" message (see design) !114491 (merged) -
Provide a link to "View all projects" and "View all groups" at the end of the associated result groupings/lists !114491 (merged)
Follow-up
-
Look into truncating titles and subtitles within the frequent items lists. !114945 (merged)
Edited by Paul Gascou-Vaillancourt