Skip to content

feat(theme): 完善原生外观、真实预览与媒体导入 - #184

Closed
3316891527 wants to merge 8 commits into
fix/revert-pr-170-176from
feat/reopen-pr-176-theme-foundation
Closed

3316891527 wants to merge 8 commits into
fix/revert-pr-170-176from
feat/reopen-pr-176-theme-foundation

Conversation

@3316891527

@3316891527 3316891527 commented Nov 9, 2026 •

Copy link
Copy Markdown
Owner

主题工作室需要让背景预览与实际页面一致,并让常见图片资源可用、导入失败原因可读。本 PR 扩展原生主题外观,同时完善页面背景、文字排版、真实预览和媒体导入。

  • 部件属性按外观、布局与位置、文字排版、图标和高级效果分组;消息使用消息外观、消息布局和消息文字标题。分组可折叠,原生渐变位于面板底部默认收起;图层渐变和模糊位于该图层的普通属性之后。
  • 全局背景内部提供可搜索的页面选择器,保留全部 66 页的独立渐变、图片、图层及浅深模式。没有独立背景的页面跟随聊天主界面,提供单页恢复跟随与全部页面跟随,批量操作可一次撤销。
  • 页面预览共用应用的 AppContent、Screen.Content、顶栏和背景绘制。52 页直接打开真实路由,13 页从现有列表、市场或包详情选择实际对象,普通插件页面从已安装插件的真实路由选择。对象参数只保存在工作室会话,不进入工程或导出。
  • 预览具有独立路由、保存状态注册表、页面 ViewModelStore 及插件执行命名空间,生命周期跟随窗口。普通预览拦截交互;对象选择沿用实际导航及离开检查。聊天预览读取当前会话,禁止消费共享输入、会话钩子和待发队列。
  • 原生外观支持线性及径向渐变、15 个 Material 文字角色和 9 个语义文字目标。字重和描边宽度使用滑条与数值输入,保留描边继承、独立颜色与零宽度关闭。原生交互支持 0–1000 毫秒状态过渡、涟漪开关和颜色,不逐帧运行 JS。
  • JPG/JPEG 的导入、图片/图标绑定和资源解码使用共享格式规则,覆盖 .jpg、.jpeg 及大写扩展名。原实现已接受 JPG/JPEG;本轮补齐一致性、明确列出两种扩展名,并把文件名/路径错误与格式不支持分开提示,避免名称问题被误报成格式问题。
  • 错误只在顶部原有红色错误栏显示,保留英文原因和括号内含本次导入的总占用/总预算。已删除重复的底部提示、专用映射和中英文文案。顶部消息生成逻辑、布局及关闭方式保持原样;未知完整大小时左侧使用 ≥ 标记已观察下界。整批校验成功后才写入工程,新增位图分配前检查像素预算。

限额保持原值:单资源 8 MiB、SVG 512 KiB、源码与素材总计 64 MiB、资源 48 项、位图解码总计 41,943,040 像素。源码及清单各 64 KiB,外观结果 128 KiB;脚本内部资源 ZIP 仍限制 64 MiB 加 128 KiB、50 条目。

验证:此前实际主题协议与资源存储源码独立编译通过,41 项核心 JUnit 全部通过。本次删除重复底部提示后,已核对顶部错误栏、英文用量/预算消息生成及资源限额逐字不变,调用、映射和 20 项中英文专用文案无残留,XML、现有回归引用和补丁格式检查通过。本次未重复执行未变更的核心测试;完整 Android/Compose 编译结果仍待确认。

保留 1 项真实 JPEG 编码、扩展名大小写、归档往返及解码的 Android 仪器回归,移除仅针对底部提示的用例。设备用例尚未执行。现有 Android Tests 运行 JVM 测试,不执行仪器用例;此前 66 页映射与图标检查记录保留在主题计划文档。

真实页面仍会加载数据库、网络及插件初始化;独立预览宿主不隔离全部业务服务。真实对象、登录与管理权限沿用原条件,完整 Android/Compose 编译和设备视觉验收仍待确认。

本次提交:52445499d0956d59d9ac895738d70fae7693cf96。交付时 Build 使用 assembleDebug,成功后由既有步骤上传 APK;Android Tests 独立运行。以下是本分支入口,各提交一次启动请求后停止,不查询运行状态:

基准仍为 #177 的撤销分支;PR 保持 open,合并由维护者决定。


本项已随 集成 PR #191 合入 dev,并经 发布同步 PR #193 同步到 main。原来源提交 52445499d0956d59d9ac895738d70fae7693cf96 已核对保留。

本 PR 原目标为 fix/revert-pr-170-176;由于 dev 已包含全部来源提交,GitHub 拒绝将目标改到 dev。关闭此重复待合并条目,代码与原始审阅记录均保留。

@3316891527 3316891527 added the ci:full-android Require assembleDebug and Android JVM tests for this PR candidate label Nov 9, 2026
Reapply the complete original merge diff from PR #176 on the reviewed rollback base.
Original merge: c944cdd

Keep this work open for maintainer review. No merge or auto-merge without explicit permission.
@3316891527
3316891527 force-pushed the feat/reopen-pr-176-theme-foundation branch from bc70f2d to 97e8e02 Compare November 9, 2026 03:16
@3316891527 3316891527 changed the title feat(theme): 恢复 #176 主题基础扩展供重新审阅 feat(theme): 扩展渐变背景、文字样式与工作室交互 Nov 9, 2026
@3316891527 3316891527 changed the title feat(theme): 扩展渐变背景、文字样式与工作室交互 feat(theme): 扩展原生外观并完善工作室真实预览 Nov 9, 2026
@3316891527 3316891527 changed the title feat(theme): 扩展原生外观并完善工作室真实预览 feat(theme): 完善原生外观、真实预览与媒体导入 Nov 9, 2026
@3316891527 3316891527 closed this Nov 10, 2026
@3316891527
3316891527 deleted the feat/reopen-pr-176-theme-foundation branch November 10, 2026 04:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:full-android Require assembleDebug and Android JVM tests for this PR candidate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant