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, EdgeInsetsGeometry? bubbleMargin, 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
- bubbleMargin → EdgeInsetsGeometry?
-
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