diff --git a/druid/src/app.rs b/druid/src/app.rs index 8d78a2dbba..15a752b437 100644 --- a/druid/src/app.rs +++ b/druid/src/app.rs @@ -20,9 +20,7 @@ use crate::shell::{Application, Error as PlatformError, WindowBuilder, WindowHan use crate::widget::LabelText; use crate::win_handler::{AppHandler, AppState}; use crate::window::WindowId; -use crate::{ - theme, AppDelegate, Data, DruidHandler, Env, LocalizedString, MenuDesc, Widget, WidgetExt, -}; +use crate::{AppDelegate, Data, DruidHandler, Env, LocalizedString, MenuDesc, Widget, WidgetExt}; use druid_shell::WindowState; @@ -118,7 +116,7 @@ impl AppLauncher { pub fn launch(mut self, data: T) -> Result<(), PlatformError> { let app = Application::new()?; - let mut env = theme::init(); + let mut env = crate::Env::default(); if let Some(f) = self.env_setup.take() { f(&mut env, &data); } diff --git a/druid/src/core.rs b/druid/src/core.rs index 510777ca74..d5e86eb3d9 100644 --- a/druid/src/core.rs +++ b/druid/src/core.rs @@ -995,7 +995,7 @@ mod tests { state: &mut state, }; - let env = crate::theme::init(); + let env = crate::Env::default(); widget.lifecycle(&mut ctx, &LifeCycle::WidgetAdded, &None, &env); assert!(ctx.widget_state.children.may_contain(&ID_1)); diff --git a/druid/src/env.rs b/druid/src/env.rs index 789ae4b97c..bc28c66564 100644 --- a/druid/src/env.rs +++ b/druid/src/env.rs @@ -470,10 +470,12 @@ impl Default for Env { debug_colors, }; - Env(Arc::new(inner)) + let env = Env(Arc::new(inner)) .adding(Env::DEBUG_PAINT, false) .adding(Env::DEBUG_WIDGET_ID, false) - .adding(Env::DEBUG_WIDGET, false) + .adding(Env::DEBUG_WIDGET, false); + + crate::theme::init(env) } } diff --git a/druid/src/tests/harness.rs b/druid/src/tests/harness.rs index 7f7469da08..f9e5114d85 100644 --- a/druid/src/tests/harness.rs +++ b/druid/src/tests/harness.rs @@ -149,7 +149,7 @@ impl Harness<'_, T> { let inner = Inner { data, - env: theme::init(), + env: Env::default(), window, cmds: Default::default(), }; diff --git a/druid/src/theme.rs b/druid/src/theme.rs index 6da0585e34..f06194c3a6 100644 --- a/druid/src/theme.rs +++ b/druid/src/theme.rs @@ -74,9 +74,8 @@ pub const SCROLLBAR_EDGE_WIDTH: Key = Key::new("org.linebender.druid.theme.scrollbar_edge_width"); /// An initial theme. -pub fn init() -> Env { - Env::default() - .adding(WINDOW_BACKGROUND_COLOR, Color::rgb8(0x29, 0x29, 0x29)) +pub fn init(env: Env) -> Env { + env.adding(WINDOW_BACKGROUND_COLOR, Color::rgb8(0x29, 0x29, 0x29)) .adding(LABEL_COLOR, Color::rgb8(0xf0, 0xf0, 0xea)) .adding(PLACEHOLDER_COLOR, Color::rgb8(0x80, 0x80, 0x80)) .adding(PRIMARY_LIGHT, Color::rgb8(0x5c, 0xc4, 0xff))