feat(widget): add dropdown widget as pick_list replacement

The Dropdown widget is based on the PickList widget from iced.
This commit is contained in:
Michael Aaron Murphy 2023-10-23 16:57:37 +02:00 committed by Michael Murphy
parent dbd6c978ba
commit ca7c17ce21
9 changed files with 1121 additions and 15 deletions

View file

@ -364,6 +364,7 @@ pub enum Container {
Background,
Card,
Custom(Box<dyn Fn(&Theme) -> container::Appearance>),
Dropdown,
HeaderBar,
Primary,
Secondary,
@ -447,6 +448,19 @@ impl container::StyleSheet for Theme {
}
}
Container::Dropdown => {
let theme = self.cosmic();
container::Appearance {
icon_color: None,
text_color: None,
background: Some(iced::Background::Color(theme.primary.base.into())),
border_radius: f32::from(theme.space_xxs()).into(),
border_width: 1.0,
border_color: theme.bg_divider().into(),
}
}
Container::Tooltip => {
let theme = self.cosmic();
@ -593,8 +607,7 @@ impl menu::StyleSheet for Theme {
border_width: 0.0,
border_radius: 16.0.into(),
border_color: Color::TRANSPARENT,
selected_text_color: cosmic.on_bg_color().into(),
// TODO doesn't seem to be specified
selected_text_color: cosmic.accent.base.into(),
selected_background: Background::Color(cosmic.background.component.hover.into()),
}
}