From 25b965d26a532cb9335c2672530090fcb3e7deae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9ctor=20Ram=C3=B3n=20Jim=C3=A9nez?= Date: Thu, 11 Sep 2025 02:46:44 +0200 Subject: [PATCH] Update system theme before creating `window::State` --- winit/src/lib.rs | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/winit/src/lib.rs b/winit/src/lib.rs index 4b7f02bd..413bdab3 100644 --- a/winit/src/lib.rs +++ b/winit/src/lib.rs @@ -635,20 +635,7 @@ async fn run_instance

( } } - let is_first = window_manager.is_empty(); - let window = window_manager.insert( - id, - window, - &program, - compositor - .as_mut() - .expect("Compositor must be initialized"), - exit_on_close_request, - system_theme, - ); - let window_theme = window - .raw .theme() .map(conversion::theme_mode) .unwrap_or_default(); @@ -661,6 +648,18 @@ async fn run_instance

( )); } + let is_first = window_manager.is_empty(); + let window = window_manager.insert( + id, + window, + &program, + compositor + .as_mut() + .expect("Compositor must be initialized"), + exit_on_close_request, + system_theme, + ); + window.raw.set_theme(conversion::window_theme( window.state.theme_mode(), ));