feat(app-iced): 向导的出图种子 + 卡壳几何修正(M223 视觉自检)
D30 的截图通道在本机可用(`--software-renderer` 走 tiny-skia,1180×760 落盘),所以不再把视觉 证据留空:新增 `ULL_ADOPT_STATE`(与 `ULL_JAVA_STATE` / `ULL_AI_STATE` 同一族,**只在 `--screenshot` 下生效**),可把向导摆到七种状态之一(pick / empty / preview / shared / failed / done + 深色),于是出图不靠「赌异步时序」。 顺带修掉三处只有出图才看得见的问题: 1. **卡壳把页脚裁掉了**:内容高于 `max_height` 时 iced 直接裁,第一版 PICK 段的「实例名」与 按钮整排不可见。现在列表段(Pick/Failed)定高 + 中间区可滚、页脚固定;短内容段 (Preview/Done)按内容收高,不留一大片空白; 2. **两枚一模一样的「关闭」**:Failed/Done 的主按钮就是关闭,文字关闭不该再出现; 3. Preview 段少了实例名一行,且标题下的摘要重复了「共用目录 · 共用游戏目录」。 夹具只造候选/问题/运行目录这些**版面数据**,后果原文仍由 core 的 `target_notes()` 现算, 图证明版面与文案、不证明 core 判据(见 `DevDocs/artifacts/m223/README.md` 的真/假表)。 为守 400 行(`components::gate` 实测 412 行红),卡壳/标题/页脚纯搬移到 `app/adopt/shell.rs`。
This commit is contained in:
1 parent
a36e17a5d3
commit
6ffbd51f60
10 files changed
+435
-171
No files matched your search
@@ -90,11 +90,11 @@ fn the_four_stages_project_from_the_event_state() {
|
||||
// Pick
|
||||
assert_eq!(state.stage(), AdoptStage::Pick);
|
||||
assert_eq!(
|
||||
title_text(state.stage(), catalog),
|
||||
shell::title_text(state.stage(), catalog),
|
||||
catalog.text(Key::AdoptTitle),
|
||||
"标题走目录"
|
||||
);
|
||||
assert!(subtitle(state.stage(), &state, catalog).contains("不复制"));
|
||||
assert!(shell::subtitle(state.stage(), &state, catalog).contains("不复制"));
|
||||
|
||||
// Preview:`notes` 是 core `target_notes()` 的原文,界面一个字都不许改
|
||||
let note =
|
||||
@@ -136,7 +136,7 @@ fn the_four_stages_project_from_the_event_state() {
|
||||
"两条问题一条都不许吞"
|
||||
);
|
||||
assert_eq!(
|
||||
title_text(state.stage(), catalog),
|
||||
shell::title_text(state.stage(), catalog),
|
||||
catalog.text(Key::AdoptFailureTitle)
|
||||
);
|
||||
|
||||
@@ -152,7 +152,7 @@ fn the_four_stages_project_from_the_event_state() {
|
||||
})));
|
||||
assert_eq!(state.stage(), AdoptStage::Done);
|
||||
assert_eq!(
|
||||
title_text(state.stage(), catalog),
|
||||
shell::title_text(state.stage(), catalog),
|
||||
catalog.text(Key::AdoptDoneTitle)
|
||||
);
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user