Repository navigation
Conversation
Anchor the pointer with absolute HID reports and send gestures through a separate relative mouse report. Refresh the absolute pointer after release and preserve normal Windows input across preview handoff. Cover consecutive drags, release on exit, missed button-up recovery and legacy F9 behavior in the Bluetooth regression suite.
Moheng-S
marked this pull request as ready for review
November 8, 2026 13:34
Owner
|
首先,非常感谢您对本项目的贡献! 两个月前,在开发蓝牙反控功能时,我也曾尝试实现类似功能。不过,经过一轮简短的内部测试后,发现兼容性问题较多,因此暂时搁置了这项工作。 您提到此次实现有 AI 辅助参与,结合之前遇到的兼容性问题,我需要花一些时间仔细审查代码并进行验证,因此审核周期可能会稍长一些。感谢您的耐心与理解! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
改动说明
验证情况
--bluetooth-input-toggle)均已通过。iPad8,1上试过九点定位和集成后的绝对坐标点击,初步使用未发现明显问题。具体 iPadOS 构建号和其他机型的兼容性待补充。实现说明
NativePreviewHost和NativePreviewWindow将主预览和独立窗口内的鼠标事件交给MainWindow.HandleWindowBluetoothPointer。该方法使用PreviewCoordinateMapper.Normalize按实际视频矩形计算归一化坐标,再应用预览旋转。黑边和画面外的输入会触发离开处理。MainViewModel在启动蓝牙反控时读取模式设置,由BluetoothHidMouseService发布对应的 Report Map。绝对模式沿用鼠标 Report ID2的六字节格式,将 X/Y 声明为0–32767的 16 位绝对坐标。滚轮仍使用相对量。AI 辅助声明
本 PR 的实现代码、回归测试和说明文档由 OpenAI 的 ChatGPT Codex 辅助编写。功能需求和 iPad 真机试用反馈由提交者提供。上面的「验证情况」列出了已执行的检查和待验证项。