Repository navigation
feat: 接入 UniDesktop 桌面能力与可校验原生发布 - #66
Merged
Merged
Conversation
Up to standards ✅🟢 Issues
|
| Metric | Results |
|---|---|
| Complexity | 106 |
| Duplication | 0 |
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
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.
Nori 的 Linux 待决授权缺少系统提醒,桌面能力也缺少统一的 SDK 接入。新增 UniDesktop SDK v0.2.0 C ABI 绑定,通过
IPlatformServices.DesktopIntegration提供外观、壁纸、通知、常亮锁、媒体与会话/电源接口;Linux 授权发送只读提醒,Windows 情绪强调色备份改用 SDK 读取并删除旧注册表读取。常亮锁保证只释放一次,Windows 检查线程归属并拒绝同一线程叠加锁;无播放器与没有强调色保留空值语义,读不到原值时不修改系统颜色;会话动作先检查对应能力位,除锁屏外要求显式确认。现有 Windows 可交互审批通知和 Avalonia 托盘继续保留:v0.2.0 C ABI 缺少通知回调/撤销,以及 Nori 依赖的托盘左键点击、动态菜单项更新和可见性接口。能力对应表与平台降级说明见
app/desktop/UniDesktop/README.md。同时删除无调用、无配置引用的旧
PluginDescriptorSummary.cs与旧网页桥接BridgeMessage/BridgeResult类型,保留仍在使用的BridgeJson序列化配置。处理 Codacy 意见:补全测试 switch 默认分支,集中静态常亮锁状态写入,将原生下载产物选择改为 Map 白名单;对固定根目录与白名单派生路径的动态文件名扫描误报逐行说明,保留双重 SHA-256 校验。固定官方 Windows/Linux x64 产物与 SHA-256,不提交 SDK 二进制。CI 在构建测试前准备原生库;发布校验原生库哈希、库与许可证是否随包分发,并将 SDK 纳入第三方清单/SBOM。macOS/Linux arm64 沿用现有平台能力。未新增模型工具或自动改变用户的媒体、壁纸、睡眠与电源状态。
验证:
ffa1dd9的 Windows/Linux/macOS CI 全部通过,覆盖全量构建、测试、发布,以及 Windows ZIP/SBOM/notices 和 first-run、initialized、safe-mode 启动烟测;Codacy 复查通过。