-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
Stacked headers and navigational search #72331
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Quick piece of feedback: Firefrox (mac) already uses |
We can... But likely anything we come up with will clash with something. That's largely why I've brought up the keyboard registry — to let people customize it to suit their tools. As another data point, Slack (for web) uses cmd+k so there's at least precedent 🤷♂️ Though you can turn it off in Slack at a user level... |
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
❤️ Loving all the old hack removals :) 👍 LGTM with just some added suggestions
x-pack/plugins/global_search_bar/public/components/search_bar.tsx
Outdated
Show resolved
Hide resolved
x-pack/plugins/global_search_bar/public/components/search_bar.tsx
Outdated
Show resolved
Hide resolved
@myasonik @ryankeairns I wanted to bring up the topic of international keyboard layouts here and would like to hear the thoughts we had around them during planning the shortcut? While the shortcut might be very easy to hit on a US layout (Ctrl + /) a lot of non US keyboard layouts might have the slash assigned to at least an Shift variation if not even a alt gr variation. So e.g. to trigger this on a German keyboard you'll need to hit Ctrl + Shift + 7 and similar on other keyboard layouts. Using a letter (like In general I'd like if you could elaborate a bit on the discussions and thoughts about that here for posterity. |
The keyboard shortcut has changed more than once since we've started working on this feature. It has been challenging to find a solution that does not conflict with one of the major browsers or screen readers. Given the wide range of possible conflicts - which very per user - our belief is that the shortcut should be customizable. Our thought process was to a) avoid single key shortcuts since those can conflict with screenreader software's way of navigating via keyboard b) avoid overriding existing browser shortcuts (which vary by browser) c) avoid global shortcuts (e.g. Cut/Copy/Paste/Save, etc.) and d) look for a common, existing pattern. This leaves us with few alternatives for single-modifier combinations. github.com uses a In addition to the advanced setting, we also have on our roadmap the creation of a global keyboard shortcut registry to avoid conflict within our own applications as shortcut usage continues to grow. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Security code changes LGTM! 👍
💚 Build SucceededBuild metrics@kbn/optimizer bundle module count
async chunks size
page load bundle size
distributable file count
History
To update your PR or re-run it, just comment with: |
* master: (25 commits) [Security Solution] Add unit tests for Network search strategy (elastic#77416) [Alerting] Improves performance of the authorization filter in AlertsClient.find by skipping KQL parsing (elastic#77040) [Ingest Manager] Add route for package installation by upload (elastic#77044) [APM-UI][E2E] filter PRs from the uptime GH team (elastic#77359) [APM] Remove useLocation and some minor route improvements (elastic#76343) [Enterprise Search] Update enterpriseSearchRequestHandler to manage range of errors + add handleAPIErrors helper (elastic#77258) [SECURITY_SOLUTION] Task/hostname policy response ux updates (elastic#76444) Move remaining uses of serviceName away from urlParams (elastic#77248) [Lens] Move configuration popover to flyout (elastic#76046) [Ingest Manager] Manually build Fleet kuery with Node arguments (elastic#76589) skip flaky suite (elastic#59975) Neutral-naming in reporting plugin (elastic#77371) [Enterprise Search] Add UserIcon styles (elastic#77385) [RUM Dashboard] Added loading state to visitor breakdown pie charts (elastic#77201) [Ingest Manager] Fix polling for new agent action (elastic#77339) Remote cluster - Functional UI test to change the superuser to a test_user with limited role (elastic#77212) Stacked headers and navigational search (elastic#72331) [ML] DF Analytics creation wizard: Fixing field loading race condition (elastic#77326) [Monitoring] Handle no mappings found for sort and collapse fields (elastic#77099) Add Lens to Recently Accessed (elastic#77249) ...
* master: (293 commits) Fix tsvb filter ration for table (elastic#77272) [Security Solution] Add unit tests for Network search strategy (elastic#77416) [Alerting] Improves performance of the authorization filter in AlertsClient.find by skipping KQL parsing (elastic#77040) [Ingest Manager] Add route for package installation by upload (elastic#77044) [APM-UI][E2E] filter PRs from the uptime GH team (elastic#77359) [APM] Remove useLocation and some minor route improvements (elastic#76343) [Enterprise Search] Update enterpriseSearchRequestHandler to manage range of errors + add handleAPIErrors helper (elastic#77258) [SECURITY_SOLUTION] Task/hostname policy response ux updates (elastic#76444) Move remaining uses of serviceName away from urlParams (elastic#77248) [Lens] Move configuration popover to flyout (elastic#76046) [Ingest Manager] Manually build Fleet kuery with Node arguments (elastic#76589) skip flaky suite (elastic#59975) Neutral-naming in reporting plugin (elastic#77371) [Enterprise Search] Add UserIcon styles (elastic#77385) [RUM Dashboard] Added loading state to visitor breakdown pie charts (elastic#77201) [Ingest Manager] Fix polling for new agent action (elastic#77339) Remote cluster - Functional UI test to change the superuser to a test_user with limited role (elastic#77212) Stacked headers and navigational search (elastic#72331) [ML] DF Analytics creation wizard: Fixing field loading race condition (elastic#77326) [Monitoring] Handle no mappings found for sort and collapse fields (elastic#77099) ...
Summary
This PR introduces two major features
1. Stacked (global) header
2. Navigational search
Closes #58049, closes #62010, closes #64541, closes #66464, and closes #68524.
Footnotes
[1] Note to app teams regarding menu relocation: there is a new header API that allows you to push app menus to the header via the shred
TopNavMenu
component. Several apps have already been converted; others are being evaluated as part of this PRabbc1b3
4e9ce62
02fde93
f48d2bf
dede90e2ecd226
dda9841
[2] The list of currently included objects can be found here. This link also describes how content gets included and what teams can do to add additional saved objects.
Preview
In a future PR
Lots of stuff! If you have a feature request, please check our existing backlog first!
Navigational Search Project Backlog
Checklist
Delete any items that are not applicable to this PR.
For maintainers