diff --git a/Frontend/lib/mih_components/mih_pop_up_messages/mih_loading_circle.dart b/Frontend/lib/mih_components/mih_pop_up_messages/mih_loading_circle.dart index 9e084019..a3560147 100644 --- a/Frontend/lib/mih_components/mih_pop_up_messages/mih_loading_circle.dart +++ b/Frontend/lib/mih_components/mih_pop_up_messages/mih_loading_circle.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import '../../main.dart'; -import 'package:gif/gif.dart'; +import 'package:gif_view/gif_view.dart'; class Mihloadingcircle extends StatefulWidget { const Mihloadingcircle({super.key}); @@ -9,9 +9,8 @@ class Mihloadingcircle extends StatefulWidget { State createState() => _MihloadingcircleState(); } -class _MihloadingcircleState extends State - with TickerProviderStateMixin { - late final GifController _controller; +class _MihloadingcircleState extends State { + // final GifController _controller = GifController(); late double popUpPaddingSize; late double popUpWidth; late double? popUpheight; @@ -37,60 +36,37 @@ class _MihloadingcircleState extends State @override void initState() { - _controller = GifController(vsync: this); //_controller.animateTo(26); super.initState(); } @override void dispose() { - _controller.dispose(); + // _controller.dispose(); super.dispose(); } @override Widget build(BuildContext context) { - ImageProvider loading = - MzanziInnovationHub.of(context)!.theme.loadingImage(); - var size = MediaQuery.of(context).size; - setState(() { - width = size.width; - height = size.height; - }); checkScreenSize(); return Dialog( - //backgroundColor: MzanziInnovationHub.of(context)!.theme.primaryColor(), child: Container( - padding: EdgeInsets.all(popUpPaddingSize), - width: 250, - height: 250, - decoration: BoxDecoration( - color: MzanziInnovationHub.of(context)!.theme.primaryColor(), - borderRadius: BorderRadius.circular(25.0), - border: Border.all( - color: MzanziInnovationHub.of(context)!.theme.primaryColor(), - width: 5.0), - ), - child: Gif( - image: loading, - controller: - _controller, // if duration and fps is null, original gif fps will be used. - fps: 15, - //duration: const Duration(seconds: 3), - autostart: Autostart.loop, - placeholder: (context) => const Center( - child: CircularProgressIndicator(), + padding: EdgeInsets.all(popUpPaddingSize), + width: 250, + height: 250, + decoration: BoxDecoration( + color: MzanziInnovationHub.of(context)!.theme.primaryColor(), + borderRadius: BorderRadius.circular(25.0), + border: Border.all( + color: MzanziInnovationHub.of(context)!.theme.primaryColor(), + width: 5.0), ), - onFetchCompleted: () { - _controller.reset(); - _controller.forward(); - }, - ), - ), - - // Center( - // child: MzanziInnovationHub.of(context)!.theme.loadingImage()), - // ), + child: GifView.asset( + MzanziInnovationHub.of(context)!.theme.loadingImageLocation(), + height: 200, + width: 200, + frameRate: 30, + )), ); } } diff --git a/Frontend/lib/mih_packages/authentication/auth_check.dart b/Frontend/lib/mih_packages/authentication/auth_check.dart index 822f34f3..2444b748 100644 --- a/Frontend/lib/mih_packages/authentication/auth_check.dart +++ b/Frontend/lib/mih_packages/authentication/auth_check.dart @@ -1,3 +1,4 @@ +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'; @@ -62,8 +63,9 @@ class _AuthCheckState extends State { } else if (snapshot.data == false) { return const SignInOrRegister(); } else { - return const SizedBox(width: 5, height: 5); - // const Mihloadingcircle(); + return + // const SizedBox(width: 5, height: 5); + const Mihloadingcircle(); } }); }, diff --git a/Frontend/lib/mih_packages/authentication/biometric_check.dart b/Frontend/lib/mih_packages/authentication/biometric_check.dart index e440b3ee..60e59e9f 100644 --- a/Frontend/lib/mih_packages/authentication/biometric_check.dart +++ b/Frontend/lib/mih_packages/authentication/biometric_check.dart @@ -68,7 +68,7 @@ class _BiometricCheckState extends State { void authenticateUser() async { final bool canAuthWithBio = await _auth.canCheckBiometrics; - print("Biomentric Available: $canAuthWithBio"); + // print("Biomentric Available: $canAuthWithBio"); if (canAuthWithBio) { try { final bool didBioAuth = await _auth.authenticate( @@ -82,7 +82,7 @@ class _BiometricCheckState extends State { _isBioAuthenticated = true; }); } - print("Authenticated: $didBioAuth"); + // print("Authenticated: $didBioAuth"); } catch (error) { print(error); } @@ -123,22 +123,21 @@ class _BiometricCheckState extends State { ), //spacer const SizedBox(height: 25), - if (!_isBioAuthenticated) - Icon( - Icons.lock, - size: 200, - color: MzanziInnovationHub.of(context)! - .theme - .secondaryColor(), - ), - if (_isBioAuthenticated) - Icon( - Icons.lock_open, - size: 200, - color: MzanziInnovationHub.of(context)! - .theme - .secondaryColor(), - ), + // if (!_isBioAuthenticated) + Icon( + Icons.lock, + size: 200, + color: + MzanziInnovationHub.of(context)!.theme.secondaryColor(), + ), + // if (_isBioAuthenticated) + // Icon( + // Icons.lock_open, + // size: 200, + // color: MzanziInnovationHub.of(context)! + // .theme + // .secondaryColor(), + // ), const SizedBox(height: 30), Container( alignment: Alignment.bottomCenter, @@ -187,7 +186,7 @@ class _BiometricCheckState extends State { void initState() { // TODO: implement initState super.initState(); - if (widget.firstBoot == true) authenticateUser(); + // if (widget.firstBoot == true) authenticateUser(); } @override @@ -206,6 +205,7 @@ class _BiometricCheckState extends State { personalSelected: widget.personalSelected, ); } else { + authenticateUser(); return getBiomentricAuthScreen(); } } diff --git a/Frontend/lib/mih_theme/mih_theme.dart b/Frontend/lib/mih_theme/mih_theme.dart index 77ae9f85..5df7458e 100644 --- a/Frontend/lib/mih_theme/mih_theme.dart +++ b/Frontend/lib/mih_theme/mih_theme.dart @@ -10,6 +10,7 @@ class MyTheme { late String mode; late String screenType; late AssetImage loading; + late String loadingAssetText; late TargetPlatform platform; bool kIsWeb = const bool.fromEnvironment('dart.library.js_util'); // Options:- @@ -227,6 +228,24 @@ class MyTheme { return loading; } + String loadingImageLocation() { + if (mode == "Dark") { + loadingAssetText = 'images/loading_light.gif'; + } else { + loadingAssetText = 'images/loading_dark.gif'; + } + return loadingAssetText; + } + + String altLoadingImageLocation() { + if (mode == "Dark") { + loadingAssetText = 'images/loading_dark.gif'; + } else { + loadingAssetText = 'images/loading_light.gif'; + } + return loadingAssetText; + } + AssetImage aiLogoImage() { if (mode == "Dark") { return const AssetImage( diff --git a/Frontend/pubspec.lock b/Frontend/pubspec.lock index 86aa6ea5..19f33b23 100644 --- a/Frontend/pubspec.lock +++ b/Frontend/pubspec.lock @@ -584,14 +584,14 @@ packages: url: "https://pub.dev" source: hosted version: "0.2.3" - gif: + gif_view: dependency: "direct main" description: - name: gif - sha256: ade95694f1471da737922806818ffade2814d1d7f8d10af38ebcf36ace012bc0 + name: gif_view + sha256: d2441d98bcd56b3fd00e869513aeaefa56849ab62f63675e7d55f5fa4517f27e url: "https://pub.dev" source: hosted - version: "2.3.0" + version: "1.0.0" glob: dependency: transitive description: diff --git a/Frontend/pubspec.yaml b/Frontend/pubspec.yaml index cafd7e0f..85376122 100644 --- a/Frontend/pubspec.yaml +++ b/Frontend/pubspec.yaml @@ -46,7 +46,8 @@ dependencies: google_nav_bar: ^5.0.6 mysql_client: ^0.0.27 args: 2.5.0 - gif: ^2.3.0 + # gif: ^2.3.0 + gif_view: ^1.0.0 intl: ^0.19.0 flutter_native_splash: ^2.4.1 #google_maps_flutter_web: ^0.5.10