aboutsummaryrefslogtreecommitdiff
path: root/alacritty/src/input
diff options
context:
space:
mode:
Diffstat (limited to 'alacritty/src/input')
-rw-r--r--alacritty/src/input/keyboard.rs11
1 files changed, 9 insertions, 2 deletions
diff --git a/alacritty/src/input/keyboard.rs b/alacritty/src/input/keyboard.rs
index ccdeac3f..113472c4 100644
--- a/alacritty/src/input/keyboard.rs
+++ b/alacritty/src/input/keyboard.rs
@@ -152,8 +152,15 @@ impl<T: EventListener, A: ActionContext<T>> Processor<T, A> {
let disambiguate = mode.contains(TermMode::DISAMBIGUATE_ESC_CODES)
&& (key.logical_key == Key::Named(NamedKey::Escape)
- || (!mods.is_empty() && mods != ModifiersState::SHIFT)
- || key.location == KeyLocation::Numpad);
+ || key.location == KeyLocation::Numpad
+ || (!mods.is_empty()
+ && (mods != ModifiersState::SHIFT
+ || matches!(
+ key.logical_key,
+ Key::Named(NamedKey::Tab)
+ | Key::Named(NamedKey::Enter)
+ | Key::Named(NamedKey::Backspace)
+ ))));
match key.logical_key {
_ if disambiguate => true,