diff --git a/lib/src/widgets/number_text_fild_widget.dart b/lib/src/widgets/number_text_fild_widget.dart index 2a3d371cd..03c5a3cd1 100644 --- a/lib/src/widgets/number_text_fild_widget.dart +++ b/lib/src/widgets/number_text_fild_widget.dart @@ -133,8 +133,23 @@ class _NumberTextInputFormatter extends TextInputFormatter { if (const ['-', ''].contains(newValue.text)) return newValue; final intValue = int.tryParse(newValue.text); if (intValue == null) return oldValue; - if (intValue < min) return newValue.copyWith(text: min.toString()); - if (intValue > max) return newValue.copyWith(text: max.toString()); + + if (intValue < min) { + final text = min.toString(); + return TextEditingValue( + text: text, + selection: TextSelection.collapsed(offset: text.length), + ); + } + + if (intValue > max) { + final text = max.toString(); + return TextEditingValue( + text: text, + selection: TextSelection.collapsed(offset: text.length), + ); + } + return newValue.copyWith(text: intValue.toString()); } }