feat(hid): 添加 Linux 键盘与 SysRq 快捷键 (#307)

控制台增加独立快捷键菜单,提供常用组合键和 Linux SysRq 指令,虚拟键盘补充 Linux 布局。
通过可靠且有序的 WebSocket 发送组合键,取消或失败时逐一释放按键,防止修饰键残留。
执行期间避免物理键盘与虚拟键盘交错输入,断连、失焦和切换布局时停止执行。
修正焦点移动后的物理按键释放,并将原虚拟键盘组合键迁移到统一菜单。

验证:独立暂存快照前端构建通过;6 项快捷键单测及 5 组浏览器测试通过,覆盖组合键序列、失败清理、取消及键盘焦点。

Refs #307
This commit is contained in:
mofeng-git
2026-10-28 07:21:52 +08:00
parent 8d58119b77
commit 3c15168ddc
8 changed files with 371 additions and 127 deletions

View File

@@ -109,6 +109,36 @@ export default {
selectResolution: '选择分辨率...',
selectFps: '选择帧率...',
},
shortcuts: {
close: "关闭快捷键",
unavailable: "HID 未连接",
releaseKeys: "请先释放已按下的键",
stopped: "已停止快捷键发送",
failed: "快捷键发送中断,请检查 HID 连接",
sysrqHelp: "SysRq 对应 PrintScreen;被控 Linux 需已启用。查看内核文档",
actions: {
'ctrl-alt-delete': "Ctrl+Alt+Del",
'task-manager': "任务管理器",
'switch-window': "切换窗口",
'close-window': "关闭窗口",
'lock-windows': "锁定 Windows",
'run': "运行",
'tty1': "切换到虚拟终端 1",
'tty2': "切换到虚拟终端 2",
'restart-x': "重启 X 服务",
'force-quit': "强制退出应用",
'sysrq-h': "显示帮助",
'sysrq-f': "调用 OOM killer",
'sysrq-m': "显示内存信息",
'sysrq-t': "显示任务信息",
'sysrq-r': "恢复键盘模式",
'sysrq-e': "终止所有进程(除 init)",
'sysrq-i': "强制终止所有进程(除 init)",
'sysrq-s': "同步磁盘",
'sysrq-u': "重新挂载为只读",
'sysrq-b': "立即重启,不先同步磁盘",
},
},
common: {
loading: '加载中...',
save: '保存',
@@ -236,6 +266,7 @@ export default {
power: '电源',
keyboard: '虚拟键盘',
keyboardTip: '显示虚拟键盘',
shortcuts: '快捷键',
webTerminal: '网页终端',
stats: '连接统计',
statsTip: '查看连接状态',