Input class
A class that represents bottom bar widget with a text field, attachment and send buttons inside. By default hides send button when text field is empty.
- Inheritance
Constructors
- Input({Key? key, bool? isAttachmentUploading, void onAttachmentPressed()?, required void onSendPressed(PartialText), void onTextChanged(String)?, void onTextFieldTap()?, required SendButtonVisibilityMode sendButtonVisibilityMode, TextEditingController? textEditingController})
-
Creates Input widget.
const
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- isAttachmentUploading → bool?
-
Whether attachment is uploading. Will replace attachment button with a
CircularProgressIndicator. Since we don't have libraries for
managing media in dependencies we have no way of knowing if
something is uploading so you need to set this manually.
final
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- onAttachmentPressed → void Function()?
-
See AttachmentButton.onPressed.
final
- onSendPressed → void Function(PartialText)
-
Will be called on SendButton tap. Has types.PartialText which can
be transformed to types.TextMessage and added to the messages list.
final
- onTextChanged → void Function(String)?
-
Will be called whenever the text inside TextField changes.
final
- onTextFieldTap → void Function()?
-
Will be called on TextField tap.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- sendButtonVisibilityMode → SendButtonVisibilityMode
-
Controls the visibility behavior of the SendButton based on the
TextField state inside the Input widget.
Defaults to SendButtonVisibilityMode.editing.
final
- textEditingController → TextEditingController?
-
Custom TextEditingController. If not provided, defaults to the
InputTextFieldController, which extends TextEditingController and has
additional fatures like markdown support. If you want to keep additional
features but still need some methods from the default TextEditingController,
you can create your own InputTextFieldController (imported from this lib)
and pass it here.
final
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< Input> -
Creates the mutable state for this widget at a given location in the tree.
override
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited