diff --git a/src/widget/list/column.rs b/src/widget/list/column.rs index b2b3b5b9..289407d8 100644 --- a/src/widget/list/column.rs +++ b/src/widget/list/column.rs @@ -4,7 +4,7 @@ use iced_core::Padding; use iced_style::container::StyleSheet; -use crate::{widget::divider, Apply, Element}; +use crate::{theme, widget::divider, Apply, Element}; pub fn list_column<'a, Message: 'static>() -> ListColumn<'a, Message> { ListColumn::default() @@ -21,7 +21,7 @@ pub struct ListColumn<'a, Message> { impl<'a, Message: 'static> Default for ListColumn<'a, Message> { fn default() -> Self { Self { - spacing: 8, + spacing: theme::THEME.lock().unwrap().cosmic().spacing.space_xxs, padding: Padding::from(0), style: ::Style::List, children: Vec::with_capacity(4), diff --git a/src/widget/settings/item.rs b/src/widget/settings/item.rs index fe86d95e..b21df312 100644 --- a/src/widget/settings/item.rs +++ b/src/widget/settings/item.rs @@ -4,6 +4,7 @@ use std::borrow::Cow; use crate::{ + theme, widget::{column, container, flex_row, horizontal_space, row, text, FlexRow, Row}, Element, }; @@ -29,10 +30,13 @@ pub fn item<'a, Message: 'static>( #[must_use] #[allow(clippy::module_name_repetitions)] pub fn item_row(children: Vec>) -> Row { + let cosmic_theme::Spacing { + space_s, space_xs, .. + } = theme::THEME.lock().unwrap().cosmic().spacing; row::with_children(children) - .spacing(12) + .spacing(space_xs) .align_items(iced::Alignment::Center) - .padding([0, 16]) + .padding([0, space_s]) } /// A settings item aligned in a flex row @@ -50,9 +54,12 @@ pub fn flex_item<'a, Message: 'static>( /// A settings item aligned in a flex row #[allow(clippy::module_name_repetitions)] pub fn flex_item_row(children: Vec>) -> FlexRow { + let cosmic_theme::Spacing { + space_s, space_xs, .. + } = theme::THEME.lock().unwrap().cosmic().spacing; flex_row(children) - .padding([0, 16]) - .spacing(12) + .padding([0, space_s]) + .spacing(space_xs) .min_item_width(200.0) .justify_items(iced::Alignment::Center) .justify_content(AlignContent::SpaceBetween) diff --git a/src/widget/settings/mod.rs b/src/widget/settings/mod.rs index b5d1abb9..f4dfbeab 100644 --- a/src/widget/settings/mod.rs +++ b/src/widget/settings/mod.rs @@ -8,10 +8,13 @@ pub use self::item::{flex_item, flex_item_row, item, item_row}; pub use self::section::{section, view_section, Section}; use crate::widget::{column, Column}; -use crate::Element; +use crate::{theme, Element}; /// A column with a predefined style for creating a settings panel #[must_use] pub fn view_column(children: Vec>) -> Column { - column::with_children(children).spacing(24).padding([0, 24]) + let spacing = theme::THEME.lock().unwrap().cosmic().spacing; + column::with_children(children) + .spacing(spacing.space_m) + .padding([0, spacing.space_m]) }