ChatTheme class abstract

Base chat theme containing all required properties to make a theme. Extend this class if you want to create a custom theme.

Implementers
Annotations

Constructors

ChatTheme({required Widget? attachmentButtonIcon, required EdgeInsets? attachmentButtonMargin, required Color backgroundColor, required EdgeInsets dateDividerMargin, required TextStyle dateDividerTextStyle, required Widget? deliveredIcon, required Widget? documentIcon, required TextStyle emptyChatPlaceholderTextStyle, required Color errorColor, required Widget? errorIcon, required Color inputBackgroundColor, required Color inputSurfaceTintColor, required double inputElevation, required BorderRadius inputBorderRadius, Decoration? inputContainerDecoration, required EdgeInsets inputMargin, required EdgeInsets inputPadding, required Color inputTextColor, Color? inputTextCursorColor, required InputDecoration inputTextDecoration, required TextStyle inputTextStyle, required double messageBorderRadius, required double messageInsetsHorizontal, required double messageInsetsVertical, required double messageMaxWidth, required Color primaryColor, required TextStyle receivedEmojiMessageTextStyle, TextStyle? receivedMessageBodyBoldTextStyle, TextStyle? receivedMessageBodyCodeTextStyle, TextStyle? receivedMessageBodyLinkTextStyle, required TextStyle receivedMessageBodyTextStyle, required TextStyle receivedMessageCaptionTextStyle, required Color receivedMessageDocumentIconColor, required TextStyle receivedMessageLinkDescriptionTextStyle, required TextStyle receivedMessageLinkTitleTextStyle, required Color secondaryColor, required Widget? seenIcon, required Widget? sendButtonIcon, required EdgeInsets? sendButtonMargin, required Widget? sendingIcon, required TextStyle sentEmojiMessageTextStyle, TextStyle? sentMessageBodyBoldTextStyle, TextStyle? sentMessageBodyCodeTextStyle, TextStyle? sentMessageBodyLinkTextStyle, required TextStyle sentMessageBodyTextStyle, required TextStyle sentMessageCaptionTextStyle, required Color sentMessageDocumentIconColor, required TextStyle sentMessageLinkDescriptionTextStyle, required TextStyle sentMessageLinkTitleTextStyle, required EdgeInsets statusIconPadding, required SystemMessageTheme systemMessageTheme, required TypingIndicatorTheme typingIndicatorTheme, required UnreadHeaderTheme unreadHeaderTheme, required Color userAvatarImageBackgroundColor, required List<Color> userAvatarNameColors, required TextStyle userAvatarTextStyle, required TextStyle userNameTextStyle, Color? highlightMessageColor})
Creates a new chat theme based on provided colors and text styles.
const

Properties

attachmentButtonIcon Widget?
Icon for select attachment button.
final
attachmentButtonMargin EdgeInsets?
Margin of attachment button.
final
backgroundColor Color
Used as a background color of a chat widget.
final
dateDividerMargin EdgeInsets
Margin around date dividers.
final
dateDividerTextStyle TextStyle
Text style of the date dividers.
final
deliveredIcon Widget?
Icon for message's delivered status. For the best look use size of 16.
final
documentIcon Widget?
Icon inside file message.
final
emptyChatPlaceholderTextStyle TextStyle
Text style of the empty chat placeholder.
final
errorColor Color
Color to indicate something bad happened (usually - shades of red).
final
errorIcon Widget?
Icon for message's error status. For the best look use size of 16.
final
hashCode int
The hash code for this object.
no setterinherited
highlightMessageColor Color?
Color used as background of message row on highligth.
final
inputBackgroundColor Color
Color of the bottom bar where text field is.
final
inputBorderRadius BorderRadius
Top border radius of the bottom bar where text field is.
final
inputContainerDecoration Decoration?
Decoration of the container wrapping the text field.
final
inputElevation double
final
inputMargin EdgeInsets
Outer insets of the bottom bar where text field is.
final
inputPadding EdgeInsets
Inner insets of the bottom bar where text field is.
final
inputSurfaceTintColor Color
Surface Tint Color of the bottom bar where text field is.
final
inputTextColor Color
Color of the text field's text and attachment/send buttons.
final
inputTextCursorColor Color?
Color of the text field's cursor.
final
inputTextDecoration InputDecoration
Decoration of the input text field.
final
inputTextStyle TextStyle
Text style of the message input. To change the color use inputTextColor.
final
messageBorderRadius double
Border radius of message container.
final
messageInsetsHorizontal double
Horizontal message bubble insets.
final
messageInsetsVertical double
Vertical message bubble insets.
final
messageMaxWidth double
Message bubble max width. set to double.infinity adaptive screen.
final
primaryColor Color
Primary color of the chat used as a background of sent messages and statuses.
final
receivedEmojiMessageTextStyle TextStyle
Text style used for displaying emojis on text messages.
final
receivedMessageBodyBoldTextStyle TextStyle?
Body text style used for displaying bold text on received text messages. Default to a bold version of receivedMessageBodyTextStyle.
final
receivedMessageBodyCodeTextStyle TextStyle?
Body text style used for displaying code text on received text messages. Defaults to a mono version of receivedMessageBodyTextStyle.
final
receivedMessageBodyLinkTextStyle TextStyle?
Text style used for displaying link text on received text messages. Defaults to receivedMessageBodyTextStyle.
final
receivedMessageBodyTextStyle TextStyle
Body text style used for displaying text on different types of received messages.
final
receivedMessageCaptionTextStyle TextStyle
Caption text style used for displaying secondary info (e.g. file size) on different types of received messages.
final
receivedMessageDocumentIconColor Color
Color of the document icon on received messages. Has no effect when documentIcon is used.
final
receivedMessageLinkDescriptionTextStyle TextStyle
Text style used for displaying link description on received messages.
final
receivedMessageLinkTitleTextStyle TextStyle
Text style used for displaying link title on received messages.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
secondaryColor Color
Secondary color, used as a background of received messages.
final
seenIcon Widget?
Icon for message's seen status. For the best look use size of 16.
final
sendButtonIcon Widget?
Icon for send button.
final
sendButtonMargin EdgeInsets?
Margin of send button.
final
sendingIcon Widget?
Icon for message's sending status. For the best look use size of 10.
final
sentEmojiMessageTextStyle TextStyle
Text style used for displaying emojis on text messages.
final
sentMessageBodyBoldTextStyle TextStyle?
Body text style used for displaying bold text on sent text messages. Defaults to a bold version of sentMessageBodyTextStyle.
final
sentMessageBodyCodeTextStyle TextStyle?
Body text style used for displaying code text on sent text messages. Defaults to a mono version of sentMessageBodyTextStyle.
final
sentMessageBodyLinkTextStyle TextStyle?
Text style used for displaying link text on sent text messages. Defaults to sentMessageBodyTextStyle.
final
sentMessageBodyTextStyle TextStyle
Body text style used for displaying text on different types of sent messages.
final
sentMessageCaptionTextStyle TextStyle
Caption text style used for displaying secondary info (e.g. file size) on different types of sent messages.
final
sentMessageDocumentIconColor Color
Color of the document icon on sent messages. Has no effect when documentIcon is used.
final
sentMessageLinkDescriptionTextStyle TextStyle
Text style used for displaying link description on sent messages.
final
sentMessageLinkTitleTextStyle TextStyle
Text style used for displaying link title on sent messages.
final
statusIconPadding EdgeInsets
Padding around status icons.
final
systemMessageTheme SystemMessageTheme
Theme for the system message. Will not have an effect if a custom builder is provided.
final
typingIndicatorTheme TypingIndicatorTheme
Theme for typing indicator. See TypingIndicator.
final
unreadHeaderTheme UnreadHeaderTheme
Theme for the unread header.
final
userAvatarImageBackgroundColor Color
Color used as a background for user avatar if an image is provided. Visible if the image has some transparent parts.
final
userAvatarNameColors List<Color>
Colors used as backgrounds for user avatars with no image and so, corresponding user names. Calculated based on a user ID, so unique across the whole app.
final
userAvatarTextStyle TextStyle
Text style used for displaying initials on user avatar if no image is provided.
final
userNameTextStyle TextStyle
User names text style. Color will be overwritten with userAvatarNameColors.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited