fix: make top nav bar right elements within a nav - #63239
fix: make top nav bar right elements within a nav#63239kristian-zendato wants to merge 1 commit into
Conversation
| <div id="contactsmenu"></div> | ||
| <div id="user-menu"></div> | ||
| </div> | ||
| <nav class="header-end" aria-label="<?php p($l->t('User menu')); ?>"> |
There was a problem hiding this comment.
Thats not the user menu, the user menu is the one on the very end.
This navigation should have a different label
Also the content within must have proper roles.
ulneedsrole = menubarlineedsrole = none- button within need
role = menuitem-> this needs to be fixed in NcHeaderButton
There was a problem hiding this comment.
@susnux The user menu is already in nav wrapper.
As far as I checked the comment here(https://github.com/nextcloud-gmbh/customer-feature-requests/issues/1591#issuecomment-5281587123), we need to move the whole top navbar within a nav wrapper which is in div now.
There was a problem hiding this comment.
That's the issue though: wrapping it means nav inside nav. Fine to have the outer one, but then AccountMenu shouldn't set is-nav. And "User menu" is the wrong label for the whole bar either way.
|
|
||
| @media only screen and (max-width: 480px) { | ||
| #header .header-end > div > .menu { | ||
| #header .header-end .menu { |
There was a problem hiding this comment.
Dropping to a descendant selector means any nested .menu in the header matches now, not just the toggle's own. Can you do the same two-selector thing as below?
| inset-inline: 0; | ||
| } | ||
| // Hide all other entries, especially the user menu as it might leak pixels | ||
| :global(.header-end:has(.local-unified-search--open) > :not(.unified-search-menu)) { |
There was a problem hiding this comment.
Can you drop this? The local search bar is Deck-only and Deck already replaced it with its own filter input, so it's getting removed from the header anyway. No point patching selectors on it.
384a1bd to
4551f67
Compare
susnux
left a comment
There was a problem hiding this comment.
This part looks good, likely needs adjustments in the vue library for NcHeadMenu to set role = menuitem
|
@susnux Regarding updating role of NcHeaderMenu to |
|
@kristian-zendato which other place is using it? It must only be used within that header bar thats its full purpose. |
|
@susnux I checked that again and yes, they are only used in header. |
yes |
@susnux Why?
Semantically, this is not about any set of buttons but a complete actions set. Like this one: I can see how it can be used as an application menu, but even in this case, it is usually about the classic application menus ( Technically, a menubar must have menu keyboard navigation, for example:
So if we keep it a menubar, we must implement it as a menu bar. What about |
You are right! The proper role is likely |
Signed-off-by: kristian-zendato <kristian.zendato@nextcloud.com>
4551f67 to
ff48cf3
Compare
| <nav class="header-end" aria-label="<?php p($l->t('Header menu')); ?>"> | ||
| <ul class="header-end__items" role="toolbar"> |
There was a problem hiding this comment.
After looking again at the overall structure of the new waffle menu I think there are more problems:
- the dashboard link (the logo) should be within the same
<nav>as the waffle menu - I do not think the
<nav>here makes sense if we usetoolbarbecause this is not a navigation we do not navigate anywhere but we just open menus or other actions. toolbarstill requires custom TAB handling
1 is unrelated to this PR but we should still at some point fix it
2 I guess just use ´
without` should fix it3 see:
https://handreichungen.bfit-bund.de/accessible-uie/werkzeugleiste.html
no?
There was a problem hiding this comment.
What about keeping it a general list? What is the problem with keeping it general buttons? Especially if this is about just 3-4 buttons, not a large menu.
|
Hello there, We hope that the review process is going smooth and is helpful for you. We want to ensure your pull request is reviewed to your satisfaction. If you have a moment, our community management team would very much appreciate your feedback on your experience with this PR review process. Your feedback is valuable to us as we continuously strive to improve our community developer experience. Please take a moment to complete our short survey by clicking on the following link: https://cloud.nextcloud.com/apps/forms/s/i9Ago4EQRZ7TWxjfmeEpPkf6 Thank you for contributing to Nextcloud and we hope to hear from you soon! (If you believe you should not receive this message, you can add yourself to the blocklist.) |

Summary
navelement.Checklist
3. to review, feature component)stable32)AI (if applicable)