add listener to effective controller
This commit is contained in:
@@ -398,11 +398,7 @@ class MessageInputState extends State<MessageInput>
|
||||
if (widget.messageInputController == null) {
|
||||
_createLocalController();
|
||||
} else {
|
||||
_effectiveController.textEditingController
|
||||
.removeListener(_onChangedDebounced);
|
||||
_effectiveController.textEditingController
|
||||
.addListener(_onChangedDebounced);
|
||||
if (!_isEditing && _timeOut <= 0) _startSlowMode();
|
||||
_initialiseEffectiveController();
|
||||
}
|
||||
_focusNode.addListener(_focusNodeListener);
|
||||
}
|
||||
@@ -418,6 +414,7 @@ class MessageInputState extends State<MessageInput>
|
||||
unregisterFromRestoration(_controller!);
|
||||
_controller!.dispose();
|
||||
_controller = null;
|
||||
_initialiseEffectiveController();
|
||||
}
|
||||
|
||||
// Update _focusNode
|
||||
@@ -447,6 +444,13 @@ class MessageInputState extends State<MessageInput>
|
||||
int _timeOut = 0;
|
||||
Timer? _slowModeTimer;
|
||||
|
||||
void _initialiseEffectiveController() {
|
||||
_effectiveController.textEditingController
|
||||
.removeListener(_onChangedDebounced);
|
||||
_effectiveController.textEditingController.addListener(_onChangedDebounced);
|
||||
if (!_isEditing && _timeOut <= 0) _startSlowMode();
|
||||
}
|
||||
|
||||
void _startSlowMode() {
|
||||
if (!mounted) {
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user