From d0b5c654aae5ea4cf45660aba9bfae936bab2bba Mon Sep 17 00:00:00 2001 From: Antonio Scandurra Date: Mon, 13 Nov 2023 14:48:08 +0100 Subject: [PATCH] Clear pending keystrokes when finding action --- crates/gpui2/src/key_dispatch.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/crates/gpui2/src/key_dispatch.rs b/crates/gpui2/src/key_dispatch.rs index 6dac90fc59..e44dc51c05 100644 --- a/crates/gpui2/src/key_dispatch.rs +++ b/crates/gpui2/src/key_dispatch.rs @@ -202,6 +202,11 @@ impl KeyDispatcher { if let KeyMatch::Some(action) = keystroke_matcher .match_keystroke(&key_down_event.keystroke, self.context_stack.as_slice()) { + // Clear all pending keystrokes when an action has been found. + for keystroke_matcher in self.keystroke_matchers.values_mut() { + keystroke_matcher.clear_pending(); + } + self.dispatch_action_on_node(*node_id, action, cx); if !cx.propagate_event { return;