fix(download): 窄档面板加专属预算,首屏露出 head+六枚 chip+说明、实例名回到 56px(M227)
720×760(chips 档)原先走 `TailShare::Shared`:面板与列表各吃 Fill 的一半,面板钉死区 (说明 + 菜单 + 实例名 ≈180px)把它吃穿 ⇒ 滚动区视口 0,head(版本 id + 安装按钮)、 六枚加载器 chip、说明一个像素都不在屏,实例名被挤成 35px 且降部被自身边框裁掉 (M222 D30 五审 `artifacts/m222/visual-verdict-r5-hold.md`)。 改法(把 M222 在 1180 档验证过的「面板先保预算、列表吃整行」落到窄档): - `TailShare` 拆出第三支 `Narrow`(chips 档 + 面板占高度),`of()` 的三条 arm 与 `Shared` 的机制注释按 r8 finding 重写(旧文档只写 M125 那一条条件); - 新增 `CHIPS_STACK` 121 / `CHIPS_LIST_CHROME` 119 / `CHIPS_PANEL_BUDGET` 192 与 `narrow_rows()`:720/760 下面板先拿预算,列表 = **132px = 3 整行**(M125 像素守门的下限); - `options::section` 三分支:窄档钉死区**只留实例名**,head / 六枚 chip / 说明 / 版本菜单 进滚动区(滚动区 120px ≥ 首屏 104,菜单露容器上沿 + 滚动条可见); - `TailShare::list_height()` 把「列表吃多少」收到一处,两个装配点共用(三栏档行为不变)。 取舍:窄档列表 4 整行 → 3 整行;菜单从钉死改为可滚。理由(459px 里「钉住菜单」+「3 整行 列表」互斥)写在 `rows/tail.rs::CHIPS_PANEL_BUDGET`。 实测(tiny-skia 出图 + 自写 measure.py,DevDocs/artifacts/m227/): 720×760 分隔线 559→514、滚动区 0→120、head 539–578、chips 583–614(32px)、说明 623–634 (8.98:1 浅 / 10.83:1 深)、实例名 668–723 = 56px(inset 12/9/17); 700×760(options-fabric)实例名从「完全不在屏」回到 56px;四条像素守门全绿; 1180×760 浅/深/中 与 1180×900 **逐像素零变化**。
This commit is contained in:
1 parent
6c060a09e2
commit
a70d5f8010
9 files changed
+331
-159
No files matched your search
@@ -173,7 +173,7 @@ pub fn view<'a>(
|
||||
view_sized(ui, metrics, model, lang, 760.0)
|
||||
}
|
||||
|
||||
/// 同 [`view`],但显式给**窗口高度**(版本列表要按整行取高,见 [`rows::whole_rows`])。
|
||||
/// 同 [`view`],但显式给**窗口高度**(版本列表要按整行取高,见 [`rows::TailShare::list_height`])。
|
||||
pub fn view_sized<'a>(
|
||||
ui: &'a Ui,
|
||||
metrics: FrameMetrics,
|
||||
@@ -247,18 +247,14 @@ fn body<'a>(
|
||||
rails::three_column(ui, catalog, model, rails, body_height)
|
||||
} else {
|
||||
// 三栏不成立(可用宽 < 600):类型与主版本原样退回顶部 chips,列表吃掉整条可用宽。
|
||||
// 高度分法跟着档位走:chips 档多花两行 chip,面板必须收回自己的一半(M125 缺陷 1)。
|
||||
// 高度分法跟着档位走:chips 档多花两行 chip,面板必须收回自己的预算(M125 缺陷 1)。
|
||||
// M227:这一档也改成「面板先保预算、列表按整行吃剩下的」——预算比三栏档紧得多
|
||||
// (`rows::CHIPS_PANEL_BUDGET` 192 vs `PANEL_BUDGET` 300),清单见 `rows/tail.rs`。
|
||||
let share = rows::TailShare::of(rails.tier, &install::panel_state(model));
|
||||
column![
|
||||
rails::stacked_chips(ui, catalog, model),
|
||||
divider::full(ui),
|
||||
rows::content(
|
||||
ui,
|
||||
catalog,
|
||||
model,
|
||||
rows::TailShare::of(rails.tier, &install::panel_state(model)),
|
||||
// chips 档不按整行取高:实测那里已经是 4.0 整行、零残影,别动。
|
||||
None,
|
||||
),
|
||||
rows::content(ui, catalog, model, share, share.list_height(body_height)),
|
||||
]
|
||||
.spacing(ui.space(Space::X2))
|
||||
.width(Length::Fill)
|
||||
|
||||
Reference in new issue
Block a user