Change summary
crates/ui/src/components/label/highlighted_label.rs | 5 +++++
crates/ui/src/components/label/label.rs | 5 +++++
crates/ui/src/components/label/label_like.rs | 10 ++++++++++
crates/ui/src/styles/color.rs | 6 ++++++
4 files changed, 26 insertions(+)
Detailed changes
@@ -75,6 +75,11 @@ impl LabelCommon for HighlightedLabel {
self.base = self.base.single_line();
self
}
+
+ fn buffer_font(mut self, cx: &App) -> Self {
+ self.base = self.base.buffer_font(cx);
+ self
+ }
}
pub fn highlight_ranges(
@@ -172,6 +172,11 @@ impl LabelCommon for Label {
self.base = self.base.single_line();
self
}
+
+ fn buffer_font(mut self, cx: &App) -> Self {
+ self.base = self.base.buffer_font(cx);
+ self
+ }
}
impl RenderOnce for Label {
@@ -55,6 +55,9 @@ pub trait LabelCommon {
/// Sets the label to render as a single line.
fn single_line(self) -> Self;
+
+ /// Sets the font to the buffer's
+ fn buffer_font(self, cx: &App) -> Self;
}
#[derive(IntoElement)]
@@ -159,6 +162,13 @@ impl LabelCommon for LabelLike {
self.single_line = true;
self
}
+
+ fn buffer_font(mut self, cx: &App) -> Self {
+ self.base = self
+ .base
+ .font(theme::ThemeSettings::get_global(cx).buffer_font.clone());
+ self
+ }
}
impl ParentElement for LabelLike {
@@ -86,3 +86,9 @@ impl Color {
}
}
}
+
+impl From<Hsla> for Color {
+ fn from(color: Hsla) -> Self {
+ Color::Custom(color)
+ }
+}