diff --git a/crates/gpui/src/app.rs b/crates/gpui/src/app.rs index d658f323f2..38c3aba045 100644 --- a/crates/gpui/src/app.rs +++ b/crates/gpui/src/app.rs @@ -1181,6 +1181,7 @@ impl MutableAppContext { MatchResult::Action(action) => { if self.dispatch_action_any(window_id, &responder_chain[0..=i], action.as_ref()) { + self.keystroke_matcher.clear_pending(); return Ok(true); } } diff --git a/crates/gpui/src/keymap.rs b/crates/gpui/src/keymap.rs index b1082123bc..bff1efbd24 100644 --- a/crates/gpui/src/keymap.rs +++ b/crates/gpui/src/keymap.rs @@ -93,6 +93,10 @@ impl Matcher { self.keymap.add_bindings(bindings); } + pub fn clear_pending(&mut self) { + self.pending.clear(); + } + pub fn push_keystroke( &mut self, keystroke: Keystroke,