diff --git a/lib/ui/account/delete_account_page.dart b/lib/ui/account/delete_account_page.dart index 0d8015f9c2..913d63ce05 100644 --- a/lib/ui/account/delete_account_page.dart +++ b/lib/ui/account/delete_account_page.dart @@ -150,6 +150,7 @@ class DeleteAccountPage extends StatelessWidget { ); if (hasAuthenticated) { + FocusScope.of(context).requestFocus(); final choice = await showChoiceDialogOld( context, l10n.confirmAccountDeleteTitle, diff --git a/lib/ui/account/verify_recovery_page.dart b/lib/ui/account/verify_recovery_page.dart index bcd2e79725..08917d7536 100644 --- a/lib/ui/account/verify_recovery_page.dart +++ b/lib/ui/account/verify_recovery_page.dart @@ -89,6 +89,7 @@ class _VerifyRecoveryPageState extends State { "Please authenticate to view your recovery key", ); if (hasAuthenticated) { + FocusScope.of(context).requestFocus(); String recoveryKey; try { recoveryKey = diff --git a/lib/ui/code_widget.dart b/lib/ui/code_widget.dart index 3a9b5c049f..45f7cdb175 100644 --- a/lib/ui/code_widget.dart +++ b/lib/ui/code_widget.dart @@ -377,6 +377,7 @@ class _CodeWidgetState extends State { if (!isAuthSuccessful) { return; } + FocusScope.of(context).requestFocus(); final Code? code = await Navigator.of(context).push( MaterialPageRoute( builder: (BuildContext context) { @@ -395,6 +396,7 @@ class _CodeWidgetState extends State { if (!isAuthSuccessful) { return; } + FocusScope.of(context).requestFocus(); // ignore: unused_local_variable final Code? code = await Navigator.of(context).push( MaterialPageRoute( @@ -414,6 +416,7 @@ class _CodeWidgetState extends State { if (!isAuthSuccessful) { return; } + FocusScope.of(context).requestFocus(); final l10n = context.l10n; await showChoiceActionSheet( context, diff --git a/lib/ui/settings/account_section_widget.dart b/lib/ui/settings/account_section_widget.dart index 4666d244aa..444cbeec0c 100644 --- a/lib/ui/settings/account_section_widget.dart +++ b/lib/ui/settings/account_section_widget.dart @@ -44,6 +44,7 @@ class AccountSectionWidget extends StatelessWidget { l10n.authToChangeYourEmail, ); if (hasAuthenticated) { + FocusScope.of(context).requestFocus(); showDialog( context: context, builder: (BuildContext context) { diff --git a/lib/ui/settings/data/export_widget.dart b/lib/ui/settings/data/export_widget.dart index 94a1e1e4b9..5ec8cc931b 100644 --- a/lib/ui/settings/data/export_widget.dart +++ b/lib/ui/settings/data/export_widget.dart @@ -133,6 +133,7 @@ Future _exportCodes(BuildContext context, String fileContent) async { if (!hasAuthenticated) { return; } + FocusScope.of(context).requestFocus(); Future.delayed( const Duration(milliseconds: 1200), () async => await shareDialog( diff --git a/lib/ui/settings/security_section_widget.dart b/lib/ui/settings/security_section_widget.dart index 5e9603fbcb..aeffe2257d 100644 --- a/lib/ui/settings/security_section_widget.dart +++ b/lib/ui/settings/security_section_widget.dart @@ -78,6 +78,7 @@ class _SecuritySectionWidgetState extends State { l10n.authToViewYourRecoveryKey, ); if (hasAuthenticated) { + FocusScope.of(context).requestFocus(); String recoveryKey; try { recoveryKey = @@ -113,6 +114,7 @@ class _SecuritySectionWidgetState extends State { final isEmailMFAEnabled = UserService.instance.hasEmailMFAEnabled(); if (hasAuthenticated) { + FocusScope.of(context).requestFocus(); await updateEmailMFA(!isEmailMFAEnabled); if (mounted) { setState(() {}); @@ -136,6 +138,7 @@ class _SecuritySectionWidgetState extends State { context.l10n.authToViewYourActiveSessions, ); if (hasAuthenticated) { + FocusScope.of(context).requestFocus(); Navigator.of(context).push( MaterialPageRoute( builder: (BuildContext context) { @@ -166,6 +169,7 @@ class _SecuritySectionWidgetState extends State { context.l10n.lockScreenEnablePreSteps, ); if (hasAuthenticated) { + FocusScope.of(context).requestFocus(); setState(() {}); } }, diff --git a/lib/ui/settings_page.dart b/lib/ui/settings_page.dart index 0380b72058..03b0250d2c 100644 --- a/lib/ui/settings_page.dart +++ b/lib/ui/settings_page.dart @@ -119,6 +119,7 @@ class SettingsPage extends StatelessWidget { return; } } + FocusScope.of(context).requestFocus(); await routeToPage( context, const OnboardingPage(),