TF-894 Auto focus input name when open dialog
This commit is contained in:
@@ -42,6 +42,7 @@ class RulesFilterCreatorController extends BaseMailboxController {
|
||||
|
||||
final inputRuleNameController = TextEditingController();
|
||||
final inputConditionValueController = TextEditingController();
|
||||
final inputRuleNameFocusNode = FocusNode();
|
||||
|
||||
AccountId? _accountId;
|
||||
String? _newRuleName;
|
||||
@@ -63,6 +64,7 @@ class RulesFilterCreatorController extends BaseMailboxController {
|
||||
|
||||
@override
|
||||
void onClose() {
|
||||
inputRuleNameFocusNode.dispose();
|
||||
inputRuleNameController.dispose();
|
||||
inputConditionValueController.dispose();
|
||||
super.onClose();
|
||||
@@ -121,7 +123,7 @@ class RulesFilterCreatorController extends BaseMailboxController {
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
inputRuleNameFocusNode.requestFocus();
|
||||
_updateStateCreatorButton();
|
||||
}
|
||||
|
||||
|
||||
@@ -123,6 +123,7 @@ class RuleFilterCreatorView extends GetWidget<RulesFilterCreatorController> {
|
||||
hintText: AppLocalizations.of(context).rulesNameHintTextInput,
|
||||
errorText: controller.errorRuleName.value,
|
||||
editingController: controller.inputRuleNameController,
|
||||
focusNode: controller.inputRuleNameFocusNode,
|
||||
onChangeAction: (value) => controller.updateRuleName(context, value),)),
|
||||
const SizedBox(height: 24),
|
||||
Text(AppLocalizations.of(context).conditionTitleRulesFilter,
|
||||
@@ -283,6 +284,7 @@ class RuleFilterCreatorView extends GetWidget<RulesFilterCreatorController> {
|
||||
hintText: AppLocalizations.of(context).rulesNameHintTextInput,
|
||||
errorText: controller.errorRuleName.value,
|
||||
editingController: controller.inputRuleNameController,
|
||||
focusNode: controller.inputRuleNameFocusNode,
|
||||
onChangeAction: (value) => controller.updateRuleName(context, value),)),
|
||||
const SizedBox(height: 24),
|
||||
Text(AppLocalizations.of(context).conditionTitleRulesFilter,
|
||||
@@ -443,6 +445,7 @@ class RuleFilterCreatorView extends GetWidget<RulesFilterCreatorController> {
|
||||
hintText: AppLocalizations.of(context).rulesNameHintTextInput,
|
||||
errorText: controller.errorRuleName.value,
|
||||
editingController: controller.inputRuleNameController,
|
||||
focusNode: controller.inputRuleNameFocusNode,
|
||||
onChangeAction: (value) => controller.updateRuleName(context, value),)),
|
||||
const Padding(
|
||||
padding: EdgeInsets.symmetric(vertical: 12),
|
||||
|
||||
+3
@@ -11,6 +11,7 @@ class RulesFilterInputField extends StatelessWidget {
|
||||
final String? errorText;
|
||||
final String? hintText;
|
||||
final TextEditingController? editingController;
|
||||
final FocusNode? focusNode;
|
||||
final OnChangeFilterInputAction? onChangeAction;
|
||||
|
||||
const RulesFilterInputField({
|
||||
@@ -18,6 +19,7 @@ class RulesFilterInputField extends StatelessWidget {
|
||||
this.hintText,
|
||||
this.errorText,
|
||||
this.editingController,
|
||||
this.focusNode,
|
||||
this.onChangeAction
|
||||
}) : super(key: key);
|
||||
|
||||
@@ -29,6 +31,7 @@ class RulesFilterInputField extends StatelessWidget {
|
||||
..addController(editingController ?? TextEditingController())
|
||||
..textStyle(const TextStyle(color: Colors.black, fontSize: 16))
|
||||
..keyboardType(TextInputType.text)
|
||||
..addFocusNode(focusNode)
|
||||
..textDecoration((RulesFilterInputDecorationBuilder()
|
||||
..setContentPadding(const EdgeInsets.symmetric(
|
||||
vertical: BuildUtils.isWeb ? 16 : 12,
|
||||
|
||||
Reference in New Issue
Block a user