From a4482e8b43d435e5841fea00e3e64eb8294de1a8 Mon Sep 17 00:00:00 2001 From: yaso Date: Wed, 29 Jan 2025 09:26:53 +0200 Subject: [PATCH 1/2] change theme set from main init to build main --- Frontend/lib/main.dart | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/Frontend/lib/main.dart b/Frontend/lib/main.dart index fe9158e1..c22065fd 100644 --- a/Frontend/lib/main.dart +++ b/Frontend/lib/main.dart @@ -84,6 +84,21 @@ class _MzanziInnovationHubState extends State { _themeMode = ThemeMode.dark; theme = MyTheme(); theme.platform = Theme.of(context).platform; + // var brightness = + // SchedulerBinding.instance.platformDispatcher.platformBrightness; + // bool isDarkMode = brightness == Brightness.dark; + // if (isDarkMode) { + // theme.mode = "Dark"; + // } else { + // theme.mode = "Light"; + // } + + super.initState(); + //doInit(); + } + + @override + Widget build(BuildContext context) { var brightness = SchedulerBinding.instance.platformDispatcher.platformBrightness; bool isDarkMode = brightness == Brightness.dark; @@ -92,13 +107,6 @@ class _MzanziInnovationHubState extends State { } else { theme.mode = "Light"; } - - super.initState(); - //doInit(); - } - - @override - Widget build(BuildContext context) { double width = MediaQuery.sizeOf(context).width; theme.setScreenType(width); precacheImage(theme.loadingImage(), context); From 3f45c441cbbe6fd848a2f6f07eb993d3dae8e135 Mon Sep 17 00:00:00 2001 From: yaso Date: Wed, 29 Jan 2025 09:59:29 +0200 Subject: [PATCH 2/2] remove theme setting from main to auth check --- Frontend/lib/main.dart | 20 ++++++++----------- .../authentication/auth_check.dart | 10 ++++++++++ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/Frontend/lib/main.dart b/Frontend/lib/main.dart index c22065fd..2836a38e 100644 --- a/Frontend/lib/main.dart +++ b/Frontend/lib/main.dart @@ -1,12 +1,8 @@ import 'package:flutter/material.dart'; -import 'package:flutter/scheduler.dart'; -//import 'package:fpjs_pro_plugin/error.dart'; import '../mih_env/env.dart'; import '../mih_router/routeGenerator.dart'; import '../mih_theme/mih_theme.dart'; -//import 'package:fpjs_pro_plugin/fpjs_pro_plugin.dart'; - class MzanziInnovationHub extends StatefulWidget { const MzanziInnovationHub({ super.key, @@ -99,14 +95,14 @@ class _MzanziInnovationHubState extends State { @override Widget build(BuildContext context) { - var brightness = - SchedulerBinding.instance.platformDispatcher.platformBrightness; - bool isDarkMode = brightness == Brightness.dark; - if (isDarkMode) { - theme.mode = "Dark"; - } else { - theme.mode = "Light"; - } + // var brightness = + // SchedulerBinding.instance.platformDispatcher.platformBrightness; + // bool isDarkMode = brightness == Brightness.dark; + // if (isDarkMode) { + // theme.mode = "Dark"; + // } else { + // theme.mode = "Light"; + // } double width = MediaQuery.sizeOf(context).width; theme.setScreenType(width); precacheImage(theme.loadingImage(), context); diff --git a/Frontend/lib/mih_packages/authentication/auth_check.dart b/Frontend/lib/mih_packages/authentication/auth_check.dart index 2444b748..4d4519b2 100644 --- a/Frontend/lib/mih_packages/authentication/auth_check.dart +++ b/Frontend/lib/mih_packages/authentication/auth_check.dart @@ -1,6 +1,8 @@ +import 'package:Mzansi_Innovation_Hub/main.dart'; import 'package:Mzansi_Innovation_Hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart'; import 'package:Mzansi_Innovation_Hub/mih_packages/authentication/biometric_check.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/scheduler.dart'; import 'package:supertokens_flutter/supertokens.dart'; import 'package:no_screenshot/no_screenshot.dart'; @@ -42,6 +44,14 @@ class _AuthCheckState extends State { void initState() { //signedIn = doesSessionExist(); disableScreenshot(); + var brightness = + SchedulerBinding.instance.platformDispatcher.platformBrightness; + bool isDarkMode = brightness == Brightness.dark; + if (isDarkMode) { + MzanziInnovationHub.of(context)!.theme.mode = "Dark"; + } else { + MzanziInnovationHub.of(context)!.theme.mode = "Light"; + } super.initState(); }