@@ -56,12 +56,13 @@ import 'stream_channel.dart';
|
|||||||
/// The widget renders the ui based on the first ancestor of type [StreamChatTheme].
|
/// The widget renders the ui based on the first ancestor of type [StreamChatTheme].
|
||||||
/// Modify it to change the widget appearance.
|
/// Modify it to change the widget appearance.
|
||||||
class MessageInput extends StatefulWidget {
|
class MessageInput extends StatefulWidget {
|
||||||
MessageInput({
|
MessageInput(
|
||||||
Key key,
|
{Key key,
|
||||||
this.onMessageSent,
|
this.onMessageSent,
|
||||||
this.parentMessage,
|
this.parentMessage,
|
||||||
this.editMessage,
|
this.editMessage,
|
||||||
}) : super(key: key);
|
this.maxHeight = 150})
|
||||||
|
: super(key: key);
|
||||||
|
|
||||||
/// Message to edit
|
/// Message to edit
|
||||||
final Message editMessage;
|
final Message editMessage;
|
||||||
@@ -72,6 +73,9 @@ class MessageInput extends StatefulWidget {
|
|||||||
/// Parent message in case of a thread
|
/// Parent message in case of a thread
|
||||||
final Message parentMessage;
|
final Message parentMessage;
|
||||||
|
|
||||||
|
/// Maximum Height for the TextField to grow before it starts scrolling
|
||||||
|
final double maxHeight;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
_MessageInputState createState() => _MessageInputState();
|
_MessageInputState createState() => _MessageInputState();
|
||||||
}
|
}
|
||||||
@@ -111,6 +115,7 @@ class _MessageInputState extends State<MessageInput> {
|
|||||||
Flex _buildTextField(BuildContext context) {
|
Flex _buildTextField(BuildContext context) {
|
||||||
return Flex(
|
return Flex(
|
||||||
direction: Axis.horizontal,
|
direction: Axis.horizontal,
|
||||||
|
crossAxisAlignment: CrossAxisAlignment.end,
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
_buildAttachmentButton(),
|
_buildAttachmentButton(),
|
||||||
_buildTextInput(context),
|
_buildTextInput(context),
|
||||||
@@ -133,6 +138,8 @@ class _MessageInputState extends State<MessageInput> {
|
|||||||
|
|
||||||
Expanded _buildTextInput(BuildContext context) {
|
Expanded _buildTextInput(BuildContext context) {
|
||||||
return Expanded(
|
return Expanded(
|
||||||
|
child: LimitedBox(
|
||||||
|
maxHeight: widget.maxHeight,
|
||||||
child: TextField(
|
child: TextField(
|
||||||
key: Key('messageInputText'),
|
key: Key('messageInputText'),
|
||||||
minLines: null,
|
minLines: null,
|
||||||
@@ -183,6 +190,7 @@ class _MessageInputState extends State<MessageInput> {
|
|||||||
border: InputBorder.none,
|
border: InputBorder.none,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user