Skip to content

被控端远程访问状态指示器

当其他设备正在访问本机时,Tauri 桌面客户端会持续显示本机状态指示器。它与授权弹窗职责不同:授权弹窗询问某项操作能否开始,状态指示器展示授权通过后实际仍在进行的活动。

展示内容

活动开始后,每个已连接的物理显示器右上角都会出现不抢焦点、始终置顶的紧凑状态卡;状态卡首次显示或刷新时都不会夺走本机用户当前应用的键盘焦点。收起态会区分:

  • 查看屏幕与鼠标、键盘远程控制;
  • 被控端系统音频正在采集;
  • 远程终端活动;
  • 文件管理活动;
  • 文件上传与下载。

窗口边缘为贴合卡片圆角的透明区域,不再绘制不透明矩形底。拖动卡片顶部的把手即可把它移开,避免遮挡下方内容。每张卡都绑定到各自的物理显示器:Tauri shell 会保留屏内位置;如果拖动越过边界,则会把卡片限制在所属屏幕的最近边缘,不允许进入另一块显示器。

点击状态卡可展开每条连接的详情。详情会在可用时显示服务端认证的名称,并标明来源是已登录账户、临时授权还是未知来源,同时展示连接 ID 的短后缀、文件传输 basename 和字节数。界面不会展示完整路径、令牌、用户 ID、组织 ID 或 IP 地址。

首个活动会话还会触发一次系统通知。远程访问期间,托盘图标带有琥珀色徽标,tooltip 显示活动会话数;“查看远程访问状态”可重新显示状态窗口。远程访问正在进行或主机已锁定时,普通托盘“退出”需要原生确认;退出只关闭界面,不会解除 daemon 锁定。详见主动断开与远程访问安全锁定

准确性与清理

被控端 daemon 只根据执行侧事实生成状态:

  • 查看屏幕必须同时满足 PeerConnection 已连接且实际协商了视频;
  • 系统音频只在当前连接与音频代际的 daemon 输出门禁确实打开时展示;
  • 远程控制跟随被控端已接受的控制状态;
  • 终端只在被控端成功创建后出现;
  • 文件浏览与传输跟随被控端 typed 生命周期事件。

替换 PeerConnection 时,状态指示器会保留逻辑上的“查看屏幕”会话,避免产生一次虚假的停止/重新开始通知;系统音频和远程控制 badge 则会清除,直到新管线或新授权真正生效。信令连接断开、被控端主动断开或 worker 重启时,才会清理相应的逻辑状态。Tauri shell 重启或重连后会直接取得当前完整快照,而不是依靠旧通知重新推测。

本机设置

[system].host_access_indicator_enabled 默认是 true。初始化向导与被控端本机“系统设置”页都提供“显示远程访问状态(推荐)”开关。

关闭时需要二次确认,而且只会隐藏持续状态卡、托盘活动徽标和首次通知;它不会改变审批、权限、清理逻辑或已经建立的远程会话。被控端仍会记录当前活动,因此重新开启后会立即恢复显示。Manager 不能远程修改这一项本机偏好。

系统音频 badge 受同一个通用开关控制,不会另建一个强制常驻窗口;即使状态指示器被隐藏,独立的“系统音频采集”允许/询问/拒绝权限仍会照常执行。

显示器与无界面模式

状态窗口会跟随物理显示器热插拔和 DPI 变化。在 Windows 上,程序通过 LcxlVirtualDisplay 设备身份识别并排除 LCXL 虚拟显示器。独占虚拟屏模式将所有物理屏 detach 后,状态窗口不会出现在仅供远端使用的虚拟屏;物理屏重新 attach 后会恢复。

显式 headless DeskServer 仍会维护权威活动状态和清理语义,但因为没有 Tauri shell,不承诺提供本机可视指示器。