Update keymap context binding behavior of > and ! (#34664)
Now ! means "no ancestors matches this", and > means "any descendent" not "any child". Updates #34570 Co-authored-by: Ben Kunkle <ben@zed.dev> Release Notes: - *Breaking change*. The context predicates in the keymap file now handle ! and > differently. Before this change ! meant "this node does not match", now it means "none of these nodes match". Before this change > meant "child of", now it means "descendent of". We do not expect these changes to break many keymaps, but they may cause subtle changes for complex context queries. --------- Co-authored-by: Ben Kunkle <ben@zed.dev>
This commit is contained in:
parent
f461290ac3
commit
e421fc7a2d
6 changed files with 261 additions and 90 deletions
|
@ -3008,7 +3008,7 @@ fn collect_contexts_from_assets() -> Vec<SharedString> {
|
|||
contexts.insert(ident_a);
|
||||
contexts.insert(ident_b);
|
||||
}
|
||||
gpui::KeyBindingContextPredicate::Child(ctx_a, ctx_b) => {
|
||||
gpui::KeyBindingContextPredicate::Descendant(ctx_a, ctx_b) => {
|
||||
queue.push(*ctx_a);
|
||||
queue.push(*ctx_b);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue