diff --git a/lib/main.dart b/lib/main.dart index 083d45518d226e235efbd78d96e89dd24b17eb0c..47dc74ada4d972af0cbc5be3494b082775bdb17e 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,5 +1,4 @@ import 'dart:async'; -import 'dart:convert'; import 'dart:io'; import 'package:connectivity_wrapper/connectivity_wrapper.dart'; @@ -13,7 +12,6 @@ import 'package:flutter/services.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_displaymode/flutter_displaymode.dart'; import 'package:introduction_screen/introduction_screen.dart'; -import 'package:json_theme/json_theme.dart'; import 'package:l10n_esperanto/l10n_esperanto.dart'; import 'package:lehttp_overrides/lehttp_overrides.dart'; import 'package:once/once.dart'; @@ -63,15 +61,25 @@ const String fetchWalletsTransactionsTask = void main() async { await NotificationController.initializeLocalNotifications(); - final String themeDarkStr = - await rootBundle.loadString('assets/appainter_theme_dark.json'); - final dynamic themeDarkJson = jsonDecode(themeDarkStr); - final ThemeData themeDark = ThemeDecoder.decodeThemeData(themeDarkJson)!; + // const int seedColorOld = 0xff526600; - final String themeLightStr = - await rootBundle.loadString('assets/appainter_theme_light.json'); - final dynamic themeLightJson = jsonDecode(themeLightStr); - final ThemeData themeLight = ThemeDecoder.decodeThemeData(themeLightJson)!; + const int seedColor = 0xff98FB98; + final int seedColorDark = Colors.lightGreen.value; + final ThemeData lightTheme = ThemeData.from( + colorScheme: ColorScheme.fromSeed( + seedColor: const Color(seedColor), + // brightness: Brightness.light, + ), + useMaterial3: true, + ); + + final ThemeData darkTheme = ThemeData.from( + colorScheme: ColorScheme.fromSeed( + seedColor: Color(seedColorDark), + brightness: Brightness.dark, + ), + useMaterial3: true, + ); // To resolve Let's Encrypt SSL certificate problems with Android 7.1.1 and below if (!kIsWeb && Platform.isAndroid) { @@ -175,7 +183,7 @@ void main() async { // Add other BlocProviders here if needed ], child: - GinkgoApp(themeDark: themeDark, themeLight: themeLight)), + GinkgoApp(darkTheme: darkTheme, lightTheme: lightTheme)), ))); }); if (inDevelopment) { @@ -334,14 +342,14 @@ PageViewModel createPageViewModel( class GinkgoApp extends StatefulWidget { const GinkgoApp( - {super.key, required this.themeLight, required this.themeDark}); + {super.key, required this.lightTheme, required this.darkTheme}); // The navigator key is necessary to navigate using static methods static final GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>(); - final ThemeData themeDark; - final ThemeData themeLight; + final ThemeData darkTheme; + final ThemeData lightTheme; @override State<GinkgoApp> createState() => _GinkgoAppState(); @@ -490,8 +498,9 @@ class _GinkgoAppState extends State<GinkgoApp> { await onKeyScanned(context, link); if (!mounted) { return; + } else { + context.read<BottomNavCubit>().updateIndex(0); } - context.read<BottomNavCubit>().updateIndex(0); } } }, onError: (Object err) { @@ -524,8 +533,8 @@ class _GinkgoAppState extends State<GinkgoApp> { child: MaterialApp( /// Localization is not available for the title. title: 'Äž1nkgo', - theme: widget.themeLight, - darkTheme: widget.themeDark, + theme: widget.lightTheme, + darkTheme: widget.darkTheme, navigatorKey: GinkgoApp.navigatorKey, scaffoldMessengerKey: globalMessengerKey,