feat(web): 新增控制台布局切换并完善状态与磁盘交互

新增经典、悬浮和侧栏布局,保存用户偏好,并调整工具栏、状态摘要及窄屏交互。
统一控制台弹层外观、焦点行为和中英文文案。
根据虚拟磁盘文件访问能力显示浏览入口、容量信息和不可用状态。

验证:npm run build 通过(vue-tsc 类型检查和 Vite 生产构建)。
This commit is contained in:
mofeng-git
2026-09-05 20:59:15 +08:00
parent db9d79554a
commit ece4f303ce
29 changed files with 1027 additions and 191 deletions

View File

@@ -96,12 +96,19 @@ export default {
backToPassword: 'Back to password',
},
status: {
no_signal: 'No signal',
busy: 'Device busy',
connected: 'Connected',
connecting: 'Connecting',
disconnected: 'Disconnected',
error: 'Error',
},
actionbar: {
muted: 'Muted',
more: 'More actions',
collapseToolbar: 'Collapse toolbar',
expandToolbar: 'Expand toolbar',
paste: 'Paste Text',
micStart: 'Start Transfer',
micStop: 'Stop Transfer',
@@ -190,6 +197,8 @@ export default {
selectAudioDevice: 'Select device...',
},
infobar: {
pointerCaptured: 'Mouse captured · Esc to release',
keys: 'Keys',
pointer: 'Pointer',
caps: 'Caps',
@@ -439,6 +448,7 @@ export default {
uploadFailed: 'File upload failed',
driveUnreadable: 'Format unsupported',
driveUnreadableTooltip: 'Unable to parse the exFAT filesystem. It may have been formatted with an unsupported format.',
driveFilesystemUnsupportedHint: 'Web file browsing does not support this filesystem, but you can still connect the drive to the target machine.',
reinitializeDrive: 'Re-initialize',
diskMode: 'Drive Mode',
singleDiskMode: 'Single',
@@ -484,7 +494,7 @@ export default {
downloadIncomplete: 'The remote image download was incomplete.',
driveNotInitialized: 'The virtual drive is not initialized.',
driveConnected: 'The virtual drive is connected to the controlled computer. Disconnect it before editing files.',
driveFilesystemUnsupported: 'The virtual drive filesystem is unsupported. Reinitialize it to continue.',
driveFilesystemUnsupported: 'Web file management does not support this format, but the drive can still be mounted on the controlled computer.',
driveSizeInvalid: 'The virtual drive size is invalid.',
storageSpaceUnavailable: 'Available virtual media storage space could not be determined.',
storageFull: 'Virtual media storage does not have enough free space.',
@@ -551,6 +561,18 @@ export default {
networkAddresses: 'Network Addresses',
language: 'Language',
theme: 'Theme',
consoleLayout: 'Console layout',
consoleLayoutDesc: 'Choose how console controls are arranged. The preference is saved in this browser.',
consoleLayoutHints: {
current: 'Full status and labeled tools for configuration and troubleshooting.',
sidebar: 'Compact status and fixed icons for frequent actions.',
floating: 'Essential floating controls that collapse to keep the video clear.',
},
consoleLayoutOptions: {
current: 'Top bar',
floating: 'Floating bar',
sidebar: 'Sidebar',
},
lightMode: 'Light',
darkMode: 'Dark',
systemMode: 'System',
@@ -948,6 +970,8 @@ export default {
},
},
statusCard: {
connectionDetails: 'Connection details',
device: 'Device',
video: 'Video',
hid: 'HID',

View File

@@ -96,12 +96,19 @@ export default {
backToPassword: '返回密码登录',
},
status: {
no_signal: '无信号',
busy: '设备占用中',
connected: '已连接',
connecting: '连接中',
disconnected: '已断开',
error: '错误',
},
actionbar: {
muted: '已静音',
more: '更多操作',
collapseToolbar: '收起工具栏',
expandToolbar: '展开工具栏',
paste: '粘贴文本',
micStart: '开始传声',
micStop: '停止传声',
@@ -190,6 +197,8 @@ export default {
selectAudioDevice: '选择设备...',
},
infobar: {
pointerCaptured: '鼠标已捕获 · Esc 释放',
keys: '按键',
pointer: '指针',
caps: 'Caps',
@@ -438,6 +447,7 @@ export default {
uploadFailed: '文件上传失败',
driveUnreadable: '格式不支持',
driveUnreadableTooltip: '无法解析 exFAT 文件系统,可能已被格式化为不支持的格式。',
driveFilesystemUnsupportedHint: '网页暂不支持浏览此文件系统,但仍可连接到被控机使用。',
reinitializeDrive: '重新初始化',
diskMode: '驱动器模式',
singleDiskMode: '单驱动器',
@@ -483,7 +493,7 @@ export default {
downloadIncomplete: '远程镜像下载不完整。',
driveNotInitialized: '虚拟盘尚未初始化。',
driveConnected: '虚拟盘已连接到被控机,请先断开连接再操作文件。',
driveFilesystemUnsupported: '虚拟盘文件系统不受支持,请重新初始化后再操作。',
driveFilesystemUnsupported: '网页文件管理不支持此格式,但仍可挂载到被控机使用。',
driveSizeInvalid: '虚拟盘大小无效。',
storageSpaceUnavailable: '无法获取虚拟媒体存储空间信息。',
storageFull: '虚拟媒体存储空间不足。',
@@ -550,6 +560,18 @@ export default {
networkAddresses: '网络地址',
language: '语言',
theme: '主题',
consoleLayout: '控制台布局',
consoleLayoutDesc: '选择控制台操作区的排列方式,设置将保存在当前浏览器。',
consoleLayoutHints: {
current: '完整状态与文字工具栏,适合配置和排障。',
sidebar: '精简状态与固定图标入口,适合频繁操作。',
floating: '常用操作悬浮显示,可收起以专注画面。',
},
consoleLayoutOptions: {
current: '顶栏',
floating: '浮动栏',
sidebar: '侧边栏',
},
lightMode: '浅色模式',
darkMode: '深色模式',
systemMode: '跟随系统',
@@ -947,6 +969,8 @@ export default {
},
},
statusCard: {
connectionDetails: '连接详情',
device: '设备',
video: '视频',
hid: 'HID',