feat(settings): M299 选中项收口到 selected_fill + 分组导航改真按钮 + tabs 用 status
- pages/settings/frame.rs:分组导航从 mouse_area 换成 button(四态可辨), 几何不变(ShapeScale::Full 胶囊),颜色走唯一的 selected_fill;forced 从 settings::view 递下来,于是 --force-state 能拍到这一处 - language / theme / appearance choice 三处「选中档位」补状态层 - components/selection/paint/chip.rs:选中分支用上 state 参数 - shell/nav.rs / shell/nav/account.rs:两处私有拷贝收口到 selected_fill(几何没动) - components/navigation/tabs.rs:状态层在样式闭包里跟 button::Status 求值 - 新增门禁 selection/tests/single_entry.rs:11 个站点必须调 selected_fill + 产品代码里不许再出现 or_else(|| Some(ui.color( 这个私有拷贝形态 - 行数:frame.rs / nav.rs / appearance::section 的单测按「纯搬移」拆出去
This commit is contained in:
1 parent
9b6e92c7b4
commit
0d917e88da
16 files changed
+1072
-355
No files matched your search
@@ -9,8 +9,10 @@
|
||||
//! ## 侧列与 rail 的关系(D33)
|
||||
//!
|
||||
//! 宽度 240 直接取 `LayoutMetrics::nav_drawer_width`(D33:同一容器 rail 88 ⇄ drawer 240 的展开态),
|
||||
//! 但**不复制 rail 的实现**:这里没有 hover 药丸、没有二级标签、没有 `Message::Select`。
|
||||
//! 将来真正的 `NavigationDrawer` 由 M78 提供,本页换掉 [`frame::group_nav`] 即可。
|
||||
//! 但**不复制 rail 的实现**:这里没有二级标签、没有 `Message::Select`。M299 起分组项也有 hover /
|
||||
//! pressed 药丸(用户点名的「整个方形区域加深」),但它走设置页自己的 `SelectGroup`,颜色走
|
||||
//! `interaction::selected_fill` 那个唯一入口(见 `frame::group_item`)。将来真正的
|
||||
//! `NavigationDrawer` 由 M78 提供,本页换掉 [`frame::group_nav`] 即可。
|
||||
//!
|
||||
//! ## 退化(窗口 <720 或 compact 档)
|
||||
//!
|
||||
@@ -241,7 +243,7 @@ pub fn view<'a>(
|
||||
let body = match metrics.layout {
|
||||
PageLayout::SupportingPane => frame::panes(
|
||||
metrics,
|
||||
frame::group_nav(ui, selected, language.effective),
|
||||
frame::group_nav(ui, selected, language.effective, forced),
|
||||
frame::left_aligned(
|
||||
metrics.column,
|
||||
form(ui, Some(selected), states, language, update, forced),
|
||||
|
||||
Reference in new issue
Block a user