From cf0e17662e299b39a15446dd1a479b9ab72bc426 Mon Sep 17 00:00:00 2001 From: jantunesmessias Date: Mon, 18 Nov 2024 16:58:27 -0300 Subject: [PATCH] ffix: move theme and screen to widgetsBinding --- lib/pages/sign_in_page/sign_in_page_widget.dart | 2 +- lib/pages/sign_up_page/sign_up_page_widget.dart | 2 +- lib/pages/welcome_page/welcome_page_widget.dart | 2 +- lib/shared/services/deeplink/deep_link_service.dart | 11 ++++++----- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/lib/pages/sign_in_page/sign_in_page_widget.dart b/lib/pages/sign_in_page/sign_in_page_widget.dart index 7b603002..828e8094 100644 --- a/lib/pages/sign_in_page/sign_in_page_widget.dart +++ b/lib/pages/sign_in_page/sign_in_page_widget.dart @@ -25,7 +25,7 @@ class _SignInPageWidgetState extends State { void initState() { super.initState(); _model = createModel(context, () => SignInPageModel()); - DeepLinkService().initDeepLinks(); + DeepLinkService().ensureInitialization(); } @override diff --git a/lib/pages/sign_up_page/sign_up_page_widget.dart b/lib/pages/sign_up_page/sign_up_page_widget.dart index 5b6a1909..16df509b 100644 --- a/lib/pages/sign_up_page/sign_up_page_widget.dart +++ b/lib/pages/sign_up_page/sign_up_page_widget.dart @@ -26,7 +26,7 @@ class _SignUpPageWidgetState extends State { void initState() { super.initState(); _model = createModel(context, () => SignUpPageModel()); - DeepLinkService().initDeepLinks(); + DeepLinkService().ensureInitialization(); } @override diff --git a/lib/pages/welcome_page/welcome_page_widget.dart b/lib/pages/welcome_page/welcome_page_widget.dart index 841495d2..a6759290 100644 --- a/lib/pages/welcome_page/welcome_page_widget.dart +++ b/lib/pages/welcome_page/welcome_page_widget.dart @@ -43,7 +43,7 @@ class _WelcomePageWidgetState extends State { setState(() {}); } }); - DeepLinkService().initDeepLinks(); + DeepLinkService().ensureInitialization(); } @override diff --git a/lib/shared/services/deeplink/deep_link_service.dart b/lib/shared/services/deeplink/deep_link_service.dart index b77da747..bea26799 100644 --- a/lib/shared/services/deeplink/deep_link_service.dart +++ b/lib/shared/services/deeplink/deep_link_service.dart @@ -12,11 +12,12 @@ class DeepLinkService { DeepLinkService._internal(); - late final AppLinks _appLinks; StreamSubscription? _linkSubscription; + bool _isInitialized = false; - Future initDeepLinks() async { + Future ensureInitialization() async { + if (_isInitialized) return; try { _appLinks = AppLinks(); print('initDeepLinks'); @@ -25,6 +26,7 @@ class DeepLinkService { await _handleDeepLink(uri); } }); + _isInitialized = true; } catch (e) { print('Error initializing deep links: $e'); } @@ -45,10 +47,9 @@ class DeepLinkService { } Future _showForgotPasswordScreen(String email, String token) async { - final theme = FlutterFlowTheme.of(StorageHelper().context!); - final screen = ForgotPasswordScreen(email: email, token: token); - WidgetsBinding.instance.addPostFrameCallback((_) async { + final theme = FlutterFlowTheme.of(StorageHelper().context!); + final screen = ForgotPasswordScreen(email: email, token: token); await showModalBottomSheet( context: StorageHelper().context!, builder: (context) => Padding(