From 3e2d7ed5bd8733c20aaf9a698c6327ca5a19d54b Mon Sep 17 00:00:00 2001 From: Enbiya Olgun <78034913+NBA2K1@users.noreply.github.com> Date: Tue, 22 Apr 2025 01:17:17 +0200 Subject: [PATCH] check if System theme has been changed Why was this removed? --- lib/main.dart | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/lib/main.dart b/lib/main.dart index 61c47860..72ef53f7 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -6,6 +6,7 @@ import 'package:desktop_webview_window/desktop_webview_window.dart'; import 'package:flex_color_scheme/flex_color_scheme.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/scheduler.dart'; import 'package:flutter_inappwebview/flutter_inappwebview.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:google_fonts/google_fonts.dart'; @@ -109,6 +110,16 @@ class _MyAppState extends ConsumerState { } else { ref.read(themeModeStateProvider.notifier).setDarkTheme(); } + // Listen to System theme changes and adjust accordingly + final dispatcher = SchedulerBinding.instance.platformDispatcher; + dispatcher.onPlatformBrightnessChanged = () { + var newBrightness = dispatcher.platformBrightness; + if (newBrightness == Brightness.light) { + ref.read(themeModeStateProvider.notifier).setLightTheme(); + } else { + ref.read(themeModeStateProvider.notifier).setDarkTheme(); + } + }; } }); }