Files
One-KVM/docs/macos-drag-compatibility.md

2.2 KiB
Raw Permalink Blame History

macOS 拖拽兼容模式(实验性)

适用于 OTG 和 CH9329 后端的绝对鼠标输入。遇到目标 Mac 上拖拽只能移动一小段便停止时,可在设置页的 HID 配置中开启「macOS 拖拽兼容模式」。默认关闭。

配置字段为 hid.mouse_macos_drag,旧 PR 的 ch9329_macos_drag 字段仍可作为读取别名。OTG 必须同时启用相对鼠标和绝对鼠标接口否则配置保存会被拒绝。CH9329 同时启用 Linux 兼容开关时,此模式优先。

报告行为

  • 未按键时仍使用绝对坐标定位。
  • 从绝对输入开始的拖拽:按下使用绝对报告,移动和滚轮使用相对报告,释放时先更新相对按钮状态,再发送绝对按钮释放。
  • 按键报告的通道保持到所有按钮释放,不随拖拽期间的输入模式切换而改变。
  • 从相对输入开始的点击、拖拽继续使用相对按钮报告;此选项不修复原生相对模式的点击兼容问题。
  • 位移从原始 15 位输入坐标换算,累计小数余量,大位移按单包范围分包并保留总量及方向。
  • 运行时使用当前视频采集尺寸,并在 HID 重载后恢复尺寸;视频尚未提供尺寸时使用配置尺寸。

验证范围与限制

本次 OTG 扩展及位移换算修改没有 macOS 实机验证。原 PR 作者对旧 CH9329 实现的实机反馈不能视为本版本已经验证。

本地自动化覆盖位移累计/分包、1080p/4K 换算、往返移动、滚轮、输入模式切换、复位、CH9329 命令队列、OTG 临时文件模拟端点及配置校验。临时文件测试仅验证写出的字节,不验证 USB 枚举或目标系统的事件解释。

相对位移受 macOS 鼠标速度、加速、显示缩放及多屏布局影响,无法保证与绝对定位逐像素一致。松手报告携带最后的客户端绝对坐标,仍可能出现落点偏移或光标跳位;大位移分包也可能增加低波特率串口延迟。

后续实机验证应分别覆盖两个后端:窗口/文件/文本拖拽快速及慢速移动滚轮和多按钮组合1080p/4K 与缩放显示,输入模式切换、断开重连、精确落点。异常时关闭此选项恢复默认行为。