From 836be6749f683be1a9728c439c85cbf547420c6c Mon Sep 17 00:00:00 2001 From: pml68 Date: Thu, 17 Jul 2025 03:26:10 +0200 Subject: fix: wrong text color being used in designer view --- src/types/rendered_element.rs | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'src/types') diff --git a/src/types/rendered_element.rs b/src/types/rendered_element.rs index 9f51e7e..85767fc 100755 --- a/src/types/rendered_element.rs +++ b/src/types/rendered_element.rs @@ -1,7 +1,9 @@ use std::collections::BTreeMap; +use iced::Element; use iced::advanced::widget::Id; -use iced::{Element, widget}; +use iced::widget::text::IntoFragment; +use iced::widget::{self}; use serde::{Deserialize, Serialize}; use crate::Error; @@ -293,21 +295,25 @@ impl std::fmt::Display for RenderedElement { impl<'a> From for Element<'a, Message> { fn from(value: RenderedElement) -> Self { + fn text<'a>(string: impl IntoFragment<'a>) -> widget::Text<'a> { + widget::text(string).style(widget::text::base) + } + let copy = value.clone(); let child_elements = copy.child_elements.unwrap_or_default(); let content: Element<'a, Message> = match copy.name { ElementName::Text(s) => if s.is_empty() { - widget::text("New Text") + text("New Text") } else { - widget::text(s) + text(s) } .apply_options(copy.options) .into(), ElementName::Button(s) => widget::button(if s.is_empty() { - widget::text("New Button") + text("New Button") } else { - widget::text(s) + text(s) }) .apply_options(copy.options) .into(), @@ -320,7 +326,7 @@ impl<'a> From for Element<'a, Message> { ElementName::Container => if child_elements.len() == 1 { widget::container(child_elements[0].clone()) } else { - widget::container("New Container").style( + widget::container(text("New Container")).style( |theme: &iced::Theme| widget::container::Style { border: iced::Border { color: theme.palette().text, @@ -345,7 +351,7 @@ impl<'a> From for Element<'a, Message> { .into() } else { widget::container( - widget::row!["New Row"] + widget::row![text("New Row")] .padding(20) .apply_options(copy.options), ) @@ -371,7 +377,7 @@ impl<'a> From for Element<'a, Message> { .into() } else { widget::container( - widget::column!["New Column"] + widget::column![text("New Column")] .padding(20) .apply_options(copy.options), ) -- cgit v1.2.3