From dd9bcaa94f575c5c8d377c5f15dc4d5d20e36686 Mon Sep 17 00:00:00 2001 From: Michael Aaron Murphy Date: Wed, 16 Jul 2025 18:12:48 +0200 Subject: [PATCH] fix(appearance): theme mode changing when selecting roundness --- .../pages/desktop/appearance/theme_manager.rs | 59 ++++++++++--------- 1 file changed, 30 insertions(+), 29 deletions(-) diff --git a/cosmic-settings/src/pages/desktop/appearance/theme_manager.rs b/cosmic-settings/src/pages/desktop/appearance/theme_manager.rs index ad8e59d..017c706 100644 --- a/cosmic-settings/src/pages/desktop/appearance/theme_manager.rs +++ b/cosmic-settings/src/pages/desktop/appearance/theme_manager.rs @@ -184,38 +184,39 @@ impl Manager { let builder = customizer.builder.0.clone(); let (current_theme, config) = customizer.theme.clone(); - tasks.push(cosmic::task::future(async move { - if let Some(config) = config { - let new_theme = builder.build(); + tasks.push( + cosmic::Task::future(async move { + if let Some(config) = config { + let new_theme = builder.build(); - theme_transaction!(config, current_theme, new_theme, { - accent; - accent_button; - background; - button; - destructive; - destructive_button; - link_button; - icon_button; - palette; - primary; - secondary; - shade; - success; - text_button; - warning; - warning_button; - window_hint; - }); - - app::Message::from(super::Message::NewTheme(Box::new(new_theme))) - } else { - app::Message::None - } - })); + theme_transaction!(config, current_theme, new_theme, { + accent; + accent_button; + background; + button; + destructive; + destructive_button; + link_button; + icon_button; + palette; + primary; + secondary; + shade; + success; + text_button; + warning; + warning_button; + window_hint; + }); + } + }) + .discard(), + ); }); - cosmic::task::batch(tasks) + cosmic::task::batch(tasks).chain(cosmic::task::message(app::Message::SetTheme( + self.cosmic_theme(), + ))) } #[inline]