feat(input): lock cursor during fullscreen streaming - #87
Merged
Conversation
Contributor
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (6)
📝 WalkthroughWalkthroughChanges光标锁定与输入生命周期
Estimated code review effort: 4 (Complex) | ~45 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
改了啥呀
OH_WindowManager_LockCursor/OH_WindowManager_UnlockCursor,把会跑出全屏串流窗口的系统光标按住啦rawDeltacompatibleSdkVersion 12,并声明LOCK_WINDOW_CURSOR权限;旧系统和不支持设备继续使用原鼠标路径为啥要改
全屏串流连接实体鼠标时,系统光标仍可能碰到窗口外或边缘区域,沉浸模式和应用层回弹管不到这一层。现在由窗口管理器负责边界,输入处理器只负责把位移送去远端,职责终于不打架了,杂鱼边缘状态退散。
Refs #80
本 PR 只处理 Issue 中第一项鼠标锁定需求;三指触控手势不在本次范围,因此不会自动关闭整个 Issue。
验证
npm run checknode hvigorw.js assembleApp --mode project -p product=default -p buildMode=debug --no-daemonfollowMovement=true,日志确认mode=confinedfollowMovement=false,日志确认mode=locked并进入 ArkUIrawDelta路径模拟器缺少
INPUT_MONITORING权限时会正确回退 ArkUI + DisplaySync。模拟器的视频解码仍为黑屏,且 UITest 注入的是触摸事件,实体鼠标rawDelta的手感仍建议在真机补充确认。Summary by CodeRabbit
新功能
改进