BubbleNormal class

Basic chat bubble

The BorderRadius can be customized using bubbleRadius

margin and padding can be used to add space around or within the bubble respectively.

Default margin value is EdgeInsets.zero and default padding value is EdgeInsets.symmetric(horizontal: 16, vertical: 2)

Color can be customized using color

tail boolean is used to add or remove a tail according to the sender type

Display message can be changed using text

text is the only required parameter

text is now selectable

Message sender can be changed using isSender

sent, delivered and seen can be used to display the message state

The TextStyle can be customized using textStyle

leading is the widget that's infront of the bubble when isSender is false.

trailing is the widget that's at the end of the bubble when isSender is true.

onTap, onDoubleTap, onLongPress are callbacks used to register tap gestures

Inheritance

Constructors

BubbleNormal({Key? key, required String text, BoxConstraints? constraints, EdgeInsets margin = EdgeInsets.zero, EdgeInsets padding = const EdgeInsets.symmetric(horizontal: 16, vertical: 2), double bubbleRadius = defaultBubbleRadius, bool isSender = true, Color color = Colors.white70, bool tail = true, bool sent = false, bool delivered = false, bool seen = false, VoidCallback? onTap, VoidCallback? onDoubleTap, VoidCallback? onLongPress, Widget? leading, Widget? trailing, TextStyle textStyle = const TextStyle(color: Colors.black87, fontSize: 16)})
Creates a BubbleNormal widget
const

Properties

bubbleRadius double
chat bubble BorderRadius
final
color Color
chat bubble color
final
constraints BoxConstraints?
constraints for the chat bubble
final
delivered bool
message state - whether the message has been delivered
final
hashCode int
The hash code for this object.
no setterinherited
isSender bool
message sender
final
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
leading Widget?
widget displayed before the bubble for non-senders
final
margin EdgeInsets
outer margin of the bubble
final
onDoubleTap VoidCallback?
callback function when the bubble is double tapped
final
onLongPress VoidCallback?
callback function when the bubble is long pressed
final
onTap VoidCallback?
callback function when the bubble is tapped
final
padding EdgeInsets
inner padding of the bubble
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
seen bool
message state - whether the message has been seen
final
sent bool
message state - whether the message has been sent
final
tail bool
chat bubble tail
final
text String
message text
final
textStyle TextStyle
text style for the message
final
trailing Widget?
widget displayed after the bubble for senders
final

Methods

build(BuildContext context) Widget
chat bubble builder method
override
createElement() StatelessElement
Creates a StatelessElement to manage this widget's location in the tree.
inherited
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