From f0f52246777f2640025048f561e908cf1d3c3ead Mon Sep 17 00:00:00 2001 From: bggRGjQaUbCoE Date: Sun, 7 Sep 2025 19:39:34 +0800 Subject: [PATCH] fix #1164 Signed-off-by: bggRGjQaUbCoE --- lib/common/widgets/text_field/editable_text.dart | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/common/widgets/text_field/editable_text.dart b/lib/common/widgets/text_field/editable_text.dart index 663f5dfd8..ee514e125 100644 --- a/lib/common/widgets/text_field/editable_text.dart +++ b/lib/common/widgets/text_field/editable_text.dart @@ -2559,6 +2559,7 @@ class EditableTextState extends State final newValue = _value.copyWith( text: widget.controller.plainText, selection: widget.controller.newSelection, + composing: TextRange.empty, ); userUpdateTextEditingValue(newValue, cause); @@ -3393,6 +3394,10 @@ class EditableTextState extends State @override void updateEditingValueWithDeltas(List textEditingDeltas) { + if (textEditingDeltas.isEmpty) { + updateEditingValue(_value.copyWith(composing: TextRange.empty)); + return; + } TextEditingValue remoteValue = _value; for (final TextEditingDelta delta in textEditingDeltas) { widget.controller.syncRichText(delta); @@ -3402,7 +3407,7 @@ class EditableTextState extends State final newValue = _value.copyWith( text: widget.controller.plainText, selection: widget.controller.newSelection, - composing: textEditingDeltas.lastOrNull?.composing, + composing: textEditingDeltas.last.composing, ); updateEditingValue(newValue, remoteValue: remoteValue); @@ -5384,6 +5389,7 @@ class EditableTextState extends State final newValue = oldValue.copyWith( text: widget.controller.plainText, selection: widget.controller.newSelection, + composing: TextRange.empty, ); userUpdateTextEditingValue(newValue, intent.cause);