-
Notifications
You must be signed in to change notification settings - Fork 891
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[UX] Redesigned Global Header #1583
Comments
I'm going to re-summarize these changes as a series of actions/transformations (actions marked [Proposed] are ambiguous in the mocks, but my suggested solutions):
Note that the "user context" menu referenced in the requirements comes from the security plugin. But any other community or custom plugins can add navigation menu items in the same way. Changing the behavior of those UI elements from a popover menu directly accessible in a menu bar to an expandable list of menu items in the collapsible nav menu is a rather significant change, and one we should probably provide a bit more time for. (It would either require plugin owners to rewrite their popover menus, or we'd have to write some sort of brittle conversion utility). So I suggest that we only move the help menu for now and allow the other nav items to remain on the consolidated bar (3). That will also reduce the likelihood of breaking plugin functional tests. |
Thank you for the summary, @joshuarrrr. I'm ok with the proposed solutions. Regarding item 3
I would propose we move those to the right of the brand icon, and left of the breadcrumbs. This would allow the |
Couple of questions;
Couple of nits/ideas;
|
Is this to target |
@kgcreative Here's the labeled parts of the existing dual headers. |
Given the new datapoints above, here is the redesigned header. Redesigned Header, RevisedIn summary: New zone ordering in the combined header: This rearranges all the current sections into a single combined row. @joshuarrrr - let's look at how this stacks in the mobile views as well. This means the current menu does not have any additional changes. Menu, Revised |
@ahopp -- the "Discover" section is intended to provide additional help for each section (in context) -- so if you are in "Observability" -- then that section should be labeled "observability" -- etc. We can take a pass at those in a later update. One of the things I want to propose in the future is a right-hand drawer that will provide contextual help anywhere you are. This might change how the "help" menu behaves in a pretty fundamental level. |
@ahopp Re: Differentiation between drawer headers vs drawers content, that's on our todo list as we redesign our visual language. |
Thanks for considering how this affects the custom plugins that use the header sections. But not all of them just add a small icon button with a popover and may need more space. For example, the way to access the different dashboards is to open the side bar, click on “Dashboard” and browse through the list. This requires many clicks and is confusing to users who are not used to the platform, so in our company we developed a plugin that adds a menu on the top bar to organise them and help users navigate through them: With this proposal we would have significantly less space on the header and our menu would be confused with the action menu or the breadcrumbs. What would be the way to handle this case? |
@evamillan - thank you so much for this additional data point! Looks like you've made great use of what we've been considering "Wasted space" in that top header bar to add a lot of value for your users. Without going down too far in to the "solutioning" rabbit hole, I can think of a couple approaches:
@evamillan - do you have a preference in the approach? |
Just an update from my understanding we will be targeting a non-breaking change for 2.1 for this. Correct @joshuarrrr, @kgcreative? |
@kavilla - Yes. I'd like to dive deeper into @evamillan's use case, as well as allow for additional time for community feedback for this change. I'm going to iterate the design a bit and look for a path to provide additional options |
@kgcreative I prefer the second approach over the first one. As you said, a collapsed menu would make navigation harder for users. |
Thanks @evamillan! We're moving this out so we can properly account for your needs in a non-breaking way. We may still do some visual cleanup in how the stacked header works and rearrange things a bit. I'll iterate in the open so you can provide feedback. |
While @kgcreative is working on accounting for these other use cases, I've put the PR into draft mode. But I wanted to at least share a demo of the current state we've gotten to so far: It's also worth noting that there's already an option to load applications in a "chromeless" mode, where the global UI chrome (such as the global header) are hidden. If we opt for an optional second or otherwise extended menu, I'm kind of thinking it's an extension of this idea, that it's possible to have |
@evamillan Are you currently collapsing your menu bar to some sort of expandable popover on mobile layouts? |
@joshuarrrr No, the menu bar is not optimized for mobile layouts yet. |
Ok, team, i've taken another pass at this. @evamillan, please confirm that this approach would work for your use case. @joshuarrrr, please check me on making sure this makes sense from a grouping perspective. I'm thinking about having a "Compressed" and "Expanded" header variants. Compressed is essentially the same design we have seen already. The "Expanded" variant has a couple of subtle distinctions from the design today:
|
@kgcreative I like this solution a lot. I'll add a couple more implementation details and plans I have for executing this. I agree that it makes sense to remove the home link from the dropdown, particularly because of the feedback we've heard about the clutter in menu. There may be some short-term user impact as folks who are used to using it adjust, but we can make the new logo home button as discoverable as possible, by at least adding a tooltip. |
@kgcreative Yes, it looks like this approach would work for us, thanks!! |
[Groom]: We are okay with utilizing the One risk: How plugins utilize these bars. |
Opened opensearch-project/oui#30 to address popover consistency. |
As part of the code review and release planning, we've made a couple more changes to what was last proposed. To summarize:
Otherwise I implemented @kgcreative's requirements (with implementation details in bold):
|
@evamillan There will be some minor changes you'll want to do as part of your update to
|
Add a config option to remove the upper global header and incorporate all items into a single header. While the previous expanded dual header is still the default, we've added a new home button which also serves as the location of the global loading indicator. Additional changes: * update branding unit tests * fix header spacing at smallest breakpoint * update branding functional tests Issue resolved: #1583 Squashed commits: - update branding mark unit tests - fix header spacing at smallest breakpoint - update custom branding functional test - update line chart functional test ticks to account for more ticks visisble with larger height of viz area - update release notes - add branding config for expanded menu - revert release note addition - remove home link from collapsible nav - Add expanded header option - Move navControlsRight to left of help - Rename HeaderLogo to HomeLoader - Serves as unified home button and global loading indicator - Add title for tooltip, because purpose may not be obvious - Rename Mark to HomeIcon - Uses home icon when header expanded by default - Restore HeaderLogo for expanded header - Duplicate default logo, rename to match mark naming (default, dark) - Add new nav control areas for expanded menu only - navControlsExpandedRight - navControlsExpandedCenter - Add new body class for expanded header - used by styles to correctly set app height - remove unecessary duplicate header mixin inclusion - fix functional tests - update test subjects - convert home tests to ts - update names and methods to be more clear - update snapshots - add, update, improve unit tests - keep expanded as default config - restore logo link - update functional tests - group dark mode branding tests - final review updates Signed-off-by: Josh Romero <[email protected]>
Add a config option to remove the upper global header and incorporate all items into a single header. While the previous expanded dual header is still the default, we've added a new home button which also serves as the location of the global loading indicator. Additional changes: * update branding unit tests * fix header spacing at smallest breakpoint * update branding functional tests Issue resolved: #1583 Squashed commits: - update branding mark unit tests - fix header spacing at smallest breakpoint - update custom branding functional test - update line chart functional test ticks to account for more ticks visisble with larger height of viz area - update release notes - add branding config for expanded menu - revert release note addition - remove home link from collapsible nav - Add expanded header option - Move navControlsRight to left of help - Rename HeaderLogo to HomeLoader - Serves as unified home button and global loading indicator - Add title for tooltip, because purpose may not be obvious - Rename Mark to HomeIcon - Uses home icon when header expanded by default - Restore HeaderLogo for expanded header - Duplicate default logo, rename to match mark naming (default, dark) - Add new nav control areas for expanded menu only - navControlsExpandedRight - navControlsExpandedCenter - Add new body class for expanded header - used by styles to correctly set app height - remove unecessary duplicate header mixin inclusion - fix functional tests - update test subjects - convert home tests to ts - update names and methods to be more clear - update snapshots - add, update, improve unit tests - keep expanded as default config - restore logo link - update functional tests - group dark mode branding tests - final review updates Signed-off-by: Josh Romero <[email protected]> (cherry picked from commit ae6cb80)
Add a config option to remove the upper global header and incorporate all items into a single header. While the previous expanded dual header is still the default, we've added a new home button which also serves as the location of the global loading indicator. Additional changes: * update branding unit tests * fix header spacing at smallest breakpoint * update branding functional tests Issue resolved: #1583 Squashed commits: - update branding mark unit tests - fix header spacing at smallest breakpoint - update custom branding functional test - update line chart functional test ticks to account for more ticks visisble with larger height of viz area - update release notes - add branding config for expanded menu - revert release note addition - remove home link from collapsible nav - Add expanded header option - Move navControlsRight to left of help - Rename HeaderLogo to HomeLoader - Serves as unified home button and global loading indicator - Add title for tooltip, because purpose may not be obvious - Rename Mark to HomeIcon - Uses home icon when header expanded by default - Restore HeaderLogo for expanded header - Duplicate default logo, rename to match mark naming (default, dark) - Add new nav control areas for expanded menu only - navControlsExpandedRight - navControlsExpandedCenter - Add new body class for expanded header - used by styles to correctly set app height - remove unecessary duplicate header mixin inclusion - fix functional tests - update test subjects - convert home tests to ts - update names and methods to be more clear - update snapshots - add, update, improve unit tests - keep expanded as default config - restore logo link - update functional tests - group dark mode branding tests - final review updates Signed-off-by: Josh Romero <[email protected]> (cherry picked from commit ae6cb80) Co-authored-by: Josh Romero <[email protected]>
After discussing with @kgcreative , we decided that the configuration option should be |
Video of Feature sign off. Note, we got feedback to make a change. Meeting+Recording+-+Feature+Sign+Off+Global+Headers.mp4 |
Demo/Sign-off outcome: Approved, contingent on configuration naming changes above |
`useExpandedHeader` instead of `useExpandedMenu` fixes #1583 Signed-off-by: Josh Romero <[email protected]>
`useExpandedHeader` instead of `useExpandedMenu` fixes #1583 Signed-off-by: Josh Romero <[email protected]> (cherry picked from commit 6ad5d08)
`useExpandedHeader` instead of `useExpandedMenu` fixes #1583 Signed-off-by: Josh Romero <[email protected]> (cherry picked from commit 6ad5d08) Co-authored-by: Josh Romero <[email protected]>
UX Changes:
Header, Nav Closed - Before
Header, Nav Closed - After
Header, Nav Open, Before & After
Related Issues:
The text was updated successfully, but these errors were encountered: