fix: X11 injector sends 'u' instead of backspace in paste_via_clipboard
paste_via_clipboard() called send_keycode(22, false) which sends evdev keycode 22 = KEY_U (letter 'u'), not KEY_BACKSPACE (evdev 14). This caused garbled output whenever Vietnamese Unicode text was pasted via clipboard (every VNI correction with accented characters). send_backspace() had the same wrong evdev keycode.
This commit is contained in:
parent
a13c192d65
commit
ed23d6bc35
1 changed files with 3 additions and 3 deletions
|
|
@ -417,10 +417,10 @@ impl X11Injector {
|
||||||
// (unlikely at this point, but be safe)
|
// (unlikely at this point, but be safe)
|
||||||
self.handle_pending_events();
|
self.handle_pending_events();
|
||||||
|
|
||||||
// Send backspaces via XTest (X11 keycode 22 = backspace)
|
// Send backspaces via XTest (evdev 14 = KEY_BACKSPACE → X11 22)
|
||||||
if backspaces > 0 {
|
if backspaces > 0 {
|
||||||
for _ in 0..backspaces {
|
for _ in 0..backspaces {
|
||||||
self.send_keycode(22, false);
|
self.send_keycode(14, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -523,7 +523,7 @@ impl KeyInjector for X11Injector {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn send_backspace(&self) -> InjectResult {
|
fn send_backspace(&self) -> InjectResult {
|
||||||
self.send_keycode(22, false); // X11 keycode 22 = backspace
|
self.send_keycode(14, false); // evdev 14 = KEY_BACKSPACE → X11 22
|
||||||
InjectResult::Success
|
InjectResult::Success
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue