From 868d6f3665bb6e5065724733a582b15752780b77 Mon Sep 17 00:00:00 2001 From: Armand <4831c0@proton.me> Date: Sat, 6 Sep 2025 10:45:23 +0200 Subject: [PATCH] fix: nav color when switching theme --- firka/lib/helpers/settings/setting.dart | 16 +--------------- firka/lib/main.dart | 3 +++ 2 files changed, 4 insertions(+), 15 deletions(-) diff --git a/firka/lib/helpers/settings/setting.dart b/firka/lib/helpers/settings/setting.dart index 811de7d..7893c93 100644 --- a/firka/lib/helpers/settings/setting.dart +++ b/firka/lib/helpers/settings/setting.dart @@ -257,22 +257,8 @@ class SettingsStore { ], 0, always, () async { - Navigator.of(navigatorKey.currentContext!) - .popUntil((route) => false); - initTheme(initData); - - Navigator.push( - navigatorKey.currentContext!, - MaterialPageRoute( - builder: (context) => DefaultAssetBundle( - bundle: FirkaBundle(), - child: HomeScreen( - initData, - false, - key: ValueKey('homeScreen'), - ))), - ); + runApp(InitializationScreen()); }) }), always), diff --git a/firka/lib/main.dart b/firka/lib/main.dart index 1ec34f6..c65f6b5 100644 --- a/firka/lib/main.dart +++ b/firka/lib/main.dart @@ -38,6 +38,7 @@ import 'l10n/app_localizations_en.dart'; Isar? isarInit; final GlobalKey navigatorKey = GlobalKey(); late AppInitialization initData; +bool initDone = false; final dio = Dio(); final isBeta = true; @@ -154,6 +155,7 @@ void initTheme(AppInitialization data) { } Future initializeApp() async { + if (initDone) return initData; final isar = await initDB(); final tokenCount = await isar.tokenModels.count(); @@ -293,6 +295,7 @@ class InitializationScreen extends StatelessWidget { assert(snapshot.data != null); initData = snapshot.data!; + initDone = true; var watch = WatchConnectivity(); if (!initData.hasWatchListener) {