diff --git a/lib/main.dart b/lib/main.dart index 040b6767..58e311c9 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -397,7 +397,7 @@ class _MainAppState extends State with WidgetsBindingObserver { case AppLifecycleState.paused: case AppLifecycleState.detached: if (Platform.isAndroid || Platform.isIOS) { - _appDatabase.close(); + unawaited(_appDatabase.close()); } InAppReviewService.instance.endSession(); if (Platform.isWindows || Platform.isMacOS || Platform.isLinux) { diff --git a/lib/screens/settings/settings_screen.dart b/lib/screens/settings/settings_screen.dart index f9fc38e3..e8ae9b18 100644 --- a/lib/screens/settings/settings_screen.dart +++ b/lib/screens/settings/settings_screen.dart @@ -578,7 +578,10 @@ class _SettingsScreenState extends State with FocusableTab { ], ); }, - ).then((_) => saveFocusNode.dispose()); + ).then((_) { + controller.dispose(); + saveFocusNode.dispose(); + }); } void _showClearCacheDialog() { diff --git a/lib/screens/settings/settings_utils.dart b/lib/screens/settings/settings_utils.dart index 2d80b156..e0feb98b 100644 --- a/lib/screens/settings/settings_utils.dart +++ b/lib/screens/settings/settings_utils.dart @@ -220,6 +220,7 @@ void _showNumericInputDialogStandard({ ); }, ).then((_) { + controller.dispose(); saveFocusNode.dispose(); }); } @@ -286,5 +287,8 @@ void showTextInputDialog({ }, ); }, - ).then((_) => saveFocusNode.dispose()); + ).then((_) { + controller.dispose(); + saveFocusNode.dispose(); + }); }