From d4dc17635643bf47257e4520f4241ac9535ef13f Mon Sep 17 00:00:00 2001 From: Hans Kokx Date: Sat, 5 Apr 2025 12:43:27 +0200 Subject: [PATCH] ArcaneReactiveTheme now optionally takes a ThemeMode parameter when calling switchTheme Signed-off-by: Hans Kokx --- .../reactive_theme/reactive_theme_service.dart | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/lib/src/services/reactive_theme/reactive_theme_service.dart b/lib/src/services/reactive_theme/reactive_theme_service.dart index 5a0122d..61f05e3 100644 --- a/lib/src/services/reactive_theme/reactive_theme_service.dart +++ b/lib/src/services/reactive_theme/reactive_theme_service.dart @@ -52,10 +52,15 @@ class ArcaneReactiveTheme extends ArcaneService { /// ```dart /// ArcaneReactiveTheme.I.switchTheme(); /// ``` - ArcaneReactiveTheme switchTheme() { - _systemThemeNotifier.value = _systemThemeNotifier.value == ThemeMode.light - ? ThemeMode.dark - : ThemeMode.light; + ArcaneReactiveTheme switchTheme({ThemeMode? themeMode}) { + if (themeMode != null) { + _systemThemeNotifier.value = themeMode; + } else { + _systemThemeNotifier.value = _systemThemeNotifier.value == ThemeMode.light + ? ThemeMode.dark + : ThemeMode.light; + } + notifyListeners(); return I;