added mip didUpdateWidget for focusnode
This commit is contained in:
@@ -12,6 +12,10 @@
|
||||
|
||||
- Videos can now be auto-played in `FullScreenMedia`
|
||||
|
||||
🔄 Changed
|
||||
|
||||
- Add `didUpdateWidget` override in `MessageInput` widget to handle changes to `focusNode`.
|
||||
|
||||
## 3.3.2
|
||||
|
||||
- Updated `stream_chat_flutter_core` dependency to [`3.3.1`](https://pub.dev/packages/stream_chat_flutter_core/changelog).
|
||||
|
||||
@@ -352,7 +352,7 @@ class MessageInput extends StatefulWidget {
|
||||
class MessageInputState extends State<MessageInput>
|
||||
with RestorationMixin<MessageInput> {
|
||||
final _imagePicker = ImagePicker();
|
||||
late final _focusNode = widget.focusNode ?? FocusNode();
|
||||
late var _focusNode = widget.focusNode ?? FocusNode();
|
||||
bool _inputEnabled = true;
|
||||
bool get _commandEnabled => _effectiveController.value.command != null;
|
||||
bool _showCommandsOverlay = false;
|
||||
@@ -419,6 +419,13 @@ class MessageInputState extends State<MessageInput>
|
||||
_controller!.dispose();
|
||||
_controller = null;
|
||||
}
|
||||
|
||||
// Update _focusNode
|
||||
if (widget.focusNode != null && oldWidget.focusNode != widget.focusNode) {
|
||||
_focusNode.removeListener(_focusNodeListener);
|
||||
_focusNode = widget.focusNode!;
|
||||
_focusNode.addListener(_focusNodeListener);
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
|
||||
Reference in New Issue
Block a user