add segmented control

This commit is contained in:
2026-11-01 14:01:49 +07:00
parent bbb56fdda7
commit 749b3e4e29
7 changed files with 588 additions and 2 deletions
+6
View File
@@ -160,6 +160,8 @@ pub struct Elevations {
pub popover: Elevation,
/// Modal dialogs sit higher with a wider one.
pub dialog: Elevation,
/// Raised plates inside controls — a selected segmented segment.
pub control: Elevation,
}
impl Elevations {
@@ -168,6 +170,7 @@ impl Elevations {
return Self {
popover: Elevation::single(Shadow::black(0., 4., 24., 0.3)),
dialog: Elevation::single(Shadow::black(0., 8., 40., 0.35)),
control: Elevation::single(Shadow::black(0., 1., 2., 0.25)),
};
}
@@ -181,6 +184,7 @@ impl Elevations {
Shadow::black(0., 8., 40., 0.14),
Shadow::black(0., 1., 2., 0.06),
),
control: Elevation::single(Shadow::black(0., 1., 2., 0.1)),
},
SourceKind::Windows => Self {
popover: Elevation::layered(
@@ -191,11 +195,13 @@ impl Elevations {
Shadow::black(0., 16., 32., 0.16),
Shadow::black(0., 4., 8., 0.1),
),
control: Elevation::single(Shadow::black(0., 1., 2., 0.12)),
},
SourceKind::Omarchy | SourceKind::Kde | SourceKind::Gnome | SourceKind::Fallback => {
Self {
popover: Elevation::single(Shadow::black(0., 3., 6., 0.2)),
dialog: Elevation::single(Shadow::black(0., 9., 18., 0.24)),
control: Elevation::single(Shadow::black(0., 1., 2., 0.16)),
}
}
}