TF-1694 Use KeyboardUtils to centralized management show/hide keyboard

(cherry picked from commit e2598476ecdc8c5d16a17dc3c777a34620013c64)
This commit is contained in:
dab246
2023-04-07 07:33:53 +07:00
committed by Dat Vu
parent ee686f2400
commit 84438efc89
18 changed files with 89 additions and 54 deletions
@@ -2,6 +2,7 @@
import 'package:core/presentation/state/failure.dart';
import 'package:core/presentation/state/success.dart';
import 'package:core/presentation/utils/app_toast.dart';
import 'package:core/presentation/utils/keyboard_utils.dart';
import 'package:core/utils/build_utils.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
@@ -265,7 +266,7 @@ class DestinationPickerController extends BaseMailboxController {
searchState.value = searchState.value.disableSearchState();
searchQuery.value = SearchQuery.initial();
searchInputController?.clear();
FocusScope.of(context).unfocus();
KeyboardUtils.hideKeyboard(context);
}
void clearSearchText() {
@@ -368,7 +369,7 @@ class DestinationPickerController extends BaseMailboxController {
}
void dispatchSelectMailboxDestination(BuildContext context) {
FocusScope.of(context).unfocus();
KeyboardUtils.hideKeyboard(context);
if (mailboxDestination.value == null) {
_appToast.showToastErrorMessage(
@@ -385,7 +386,7 @@ class DestinationPickerController extends BaseMailboxController {
}
void createNewMailboxAction(BuildContext context) {
FocusScope.of(context).unfocus();
KeyboardUtils.hideKeyboard(context);
final nameMailbox = newNameMailbox.value;
if (nameMailbox != null && nameMailbox.isNotEmpty) {
@@ -408,7 +409,7 @@ class DestinationPickerController extends BaseMailboxController {
void backToDestinationScreen(BuildContext context) {
nameInputController?.clear();
FocusScope.of(context).unfocus();
KeyboardUtils.hideKeyboard(context);
destinationScreenType.value = DestinationScreenType.destinationPicker;
}
@@ -424,7 +425,7 @@ class DestinationPickerController extends BaseMailboxController {
}
void closeDestinationPicker(BuildContext context) {
FocusScope.of(context).unfocus();
KeyboardUtils.hideKeyboard(context);
if (BuildUtils.isWeb) {
onDismissDestinationPicker?.call();