keymap_ui: Only show conflicts between user bindings (#34284)

Closes #ISSUE

This makes it so conflicts are only shown between user bindings. User
bindings that override bindings in the Vim, Base, and Default keymaps
are not identified as conflicts

Release Notes:

- N/A *or* Added/Fixed/Improved ...

Co-authored-by: Anthony <anthony@zed.dev>
This commit is contained in:
Ben Kunkle 2025-07-11 08:51:21 -05:00 committed by GitHub
parent 7eb739d489
commit 3b9bb521f4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -193,7 +193,13 @@ impl ConflictState {
key_bindings
.iter()
.enumerate()
.filter(|(_, binding)| !binding.keystroke_text.is_empty())
.filter(|(_, binding)| {
!binding.keystroke_text.is_empty()
&& binding
.source
.as_ref()
.is_some_and(|source| matches!(source.0, KeybindSource::User))
})
.for_each(|(index, binding)| {
action_keybind_mapping
.entry(binding.get_action_mapping())