TF-354 Remove the real time validate of the mailbox name field
This commit is contained in:
@@ -29,6 +29,8 @@ class MailboxCreatorController extends BaseController {
|
|||||||
final selectedMailbox = Rxn<PresentationMailbox>();
|
final selectedMailbox = Rxn<PresentationMailbox>();
|
||||||
final newNameMailbox = Rxn<String>();
|
final newNameMailbox = Rxn<String>();
|
||||||
|
|
||||||
|
final nameInputFocusNode = FocusNode();
|
||||||
|
|
||||||
AccountId? accountId;
|
AccountId? accountId;
|
||||||
MailboxTree? folderMailboxTree;
|
MailboxTree? folderMailboxTree;
|
||||||
MailboxTree? defaultMailboxTree;
|
MailboxTree? defaultMailboxTree;
|
||||||
@@ -66,8 +68,19 @@ class MailboxCreatorController extends BaseController {
|
|||||||
@override
|
@override
|
||||||
void onError(error) {}
|
void onError(error) {}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void onClose() {
|
||||||
|
nameInputFocusNode.dispose();
|
||||||
|
super.onClose();
|
||||||
|
}
|
||||||
|
|
||||||
bool isCreateMailboxValidated(BuildContext context) {
|
bool isCreateMailboxValidated(BuildContext context) {
|
||||||
final nameValidated = getErrorInputNameString(context);
|
final nameValidated = getErrorInputNameString(context);
|
||||||
|
|
||||||
|
if (!nameInputFocusNode.hasFocus && newNameMailbox.value == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
if (nameValidated?.isNotEmpty == true) {
|
if (nameValidated?.isNotEmpty == true) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -101,6 +114,10 @@ class MailboxCreatorController extends BaseController {
|
|||||||
String? getErrorInputNameString(BuildContext context) {
|
String? getErrorInputNameString(BuildContext context) {
|
||||||
final nameMailbox = newNameMailbox.value;
|
final nameMailbox = newNameMailbox.value;
|
||||||
|
|
||||||
|
if (!nameInputFocusNode.hasFocus && nameMailbox == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
return _verifyNameInteractor.execute(
|
return _verifyNameInteractor.execute(
|
||||||
nameMailbox,
|
nameMailbox,
|
||||||
[
|
[
|
||||||
|
|||||||
@@ -112,8 +112,8 @@ class MailboxCreatorView extends GetWidget<MailboxCreatorController> {
|
|||||||
..onChange((value) => controller.setNewNameMailbox(value))
|
..onChange((value) => controller.setNewNameMailbox(value))
|
||||||
..keyboardType(TextInputType.visiblePassword)
|
..keyboardType(TextInputType.visiblePassword)
|
||||||
..cursorColor(AppColor.colorTextButton)
|
..cursorColor(AppColor.colorTextButton)
|
||||||
..autoFocus(true)
|
|
||||||
..textStyle(TextStyle(color: AppColor.colorNameEmail, fontSize: 16))
|
..textStyle(TextStyle(color: AppColor.colorNameEmail, fontSize: 16))
|
||||||
|
..addFocusNode(controller.nameInputFocusNode)
|
||||||
..textDecoration((CreateMailboxNameInputDecorationBuilder()
|
..textDecoration((CreateMailboxNameInputDecorationBuilder()
|
||||||
..setHintText(AppLocalizations.of(context).hint_input_create_new_mailbox)
|
..setHintText(AppLocalizations.of(context).hint_input_create_new_mailbox)
|
||||||
..setErrorText(controller.getErrorInputNameString(context)))
|
..setErrorText(controller.getErrorInputNameString(context)))
|
||||||
|
|||||||
Reference in New Issue
Block a user