TF-2101 Add input field focus manager

(cherry picked from commit c2e5d7cd96d619d0dbb2453b4bf70c286d5cd3e3)
This commit is contained in:
hieubt
2023-12-21 00:16:39 +07:00
committed by Dat H. Pham
parent a6e859f2b6
commit 019176d5a2
@@ -0,0 +1,35 @@
import 'package:flutter/material.dart';
class InputFieldFocusManager {
late FocusNode deletionDateFieldFocusNode;
late FocusNode receptionDateFieldFocusNode;
late FocusNode subjectFieldFocusNode;
late FocusNode recipientsFieldFocusNode;
late FocusNode senderFieldFocusNode;
late FocusNode attachmentCheckboxFocusNode;
late FocusNode createButtonFocusNode;
InputFieldFocusManager() {
deletionDateFieldFocusNode = FocusNode();
receptionDateFieldFocusNode = FocusNode();
subjectFieldFocusNode = FocusNode();
recipientsFieldFocusNode = FocusNode();
senderFieldFocusNode = FocusNode();
attachmentCheckboxFocusNode = FocusNode(skipTraversal: true);
createButtonFocusNode = FocusNode();
}
factory InputFieldFocusManager.initial() {
return InputFieldFocusManager();
}
void dispose() {
deletionDateFieldFocusNode.dispose();
receptionDateFieldFocusNode.dispose();
subjectFieldFocusNode.dispose();
recipientsFieldFocusNode.dispose();
senderFieldFocusNode.dispose();
attachmentCheckboxFocusNode.dispose();
createButtonFocusNode.dispose();
}
}