mirror of
https://github.com/alacritty/alacritty.git
synced 2024-11-18 13:55:23 -05:00
Send alt key with actual key in one flush
The delay between the alt key and the actual received key might cause certain key sequences to be missed, ex. when tmux has its escape-time set to 0.
This commit is contained in:
parent
e1ee890750
commit
c47c52d844
2 changed files with 5 additions and 4 deletions
|
@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||||
- Fix color issue in ncurses programs by updating terminfo pairs from 0x10000 to 0x7FFF
|
- Fix color issue in ncurses programs by updating terminfo pairs from 0x10000 to 0x7FFF
|
||||||
- Fix panic after quitting Alacritty on macOS
|
- Fix panic after quitting Alacritty on macOS
|
||||||
- Tabs are no longer replaced by spaces when copying them to the clipboard
|
- Tabs are no longer replaced by spaces when copying them to the clipboard
|
||||||
|
- Alt modifier is no longer sent separately from the modified key
|
||||||
|
|
||||||
## Version 0.2.4
|
## Version 0.2.4
|
||||||
|
|
||||||
|
|
|
@ -687,16 +687,16 @@ impl<'a, A: ActionContext + 'a> Processor<'a, A> {
|
||||||
self.ctx.clear_selection();
|
self.ctx.clear_selection();
|
||||||
|
|
||||||
let utf8_len = c.len_utf8();
|
let utf8_len = c.len_utf8();
|
||||||
if *self.ctx.received_count() == 0 && self.ctx.last_modifiers().alt && utf8_len == 1 {
|
|
||||||
self.ctx.write_to_pty(b"\x1b".to_vec());
|
|
||||||
}
|
|
||||||
|
|
||||||
let mut bytes = Vec::with_capacity(utf8_len);
|
let mut bytes = Vec::with_capacity(utf8_len);
|
||||||
unsafe {
|
unsafe {
|
||||||
bytes.set_len(utf8_len);
|
bytes.set_len(utf8_len);
|
||||||
c.encode_utf8(&mut bytes[..]);
|
c.encode_utf8(&mut bytes[..]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if *self.ctx.received_count() == 0 && self.ctx.last_modifiers().alt && utf8_len == 1 {
|
||||||
|
bytes.insert(0, b'\x1b');
|
||||||
|
}
|
||||||
|
|
||||||
self.ctx.write_to_pty(bytes);
|
self.ctx.write_to_pty(bytes);
|
||||||
|
|
||||||
*self.ctx.received_count() += 1;
|
*self.ctx.received_count() += 1;
|
||||||
|
|
Loading…
Reference in a new issue