feat(desktop): support simultaneous multi-key presses

This commit is contained in:
Guoguo
2025-12-01 16:29:13 +08:00
parent 6595f47f52
commit 8fa817aca3
6 changed files with 159 additions and 84 deletions

View File

@@ -63,20 +63,20 @@ export const VirtualKeyboard = ({ isBigScreen }: KeyboardProps) => {
return;
}
const ctrl = getCtrl();
const modifiers = getModifiers();
const keys = [0x00, 0x00, code, 0x00, 0x00, 0x00];
await device.sendKeyboardData(ctrl, keys);
await device.sendKeyboardData(modifiers, keys);
}
async function sendKeyup() {
const ctrl = new Modifiers();
const modifiers = new Modifiers();
const keys = [0x00, 0x00, 0x00, 0x00, 0x00, 0x00];
await device.sendKeyboardData(ctrl, keys);
await device.sendKeyboardData(modifiers, keys);
setActiveModifierKeys([]);
}
function getCtrl() {
function getModifiers() {
const modifiers = new Modifiers();
activeModifierKeys.forEach((modifierKey) => {