messageDecoration function
BoxDecoration
messageDecoration(
- BuildContext context, {
- Color? color,
- double radius = 8.0,
- double tightRadius = 0.0,
- MessagePosition? messagePosition = MessagePosition.isolated,
- MessageFlow messageFlow = MessageFlow.outgoing,
Implementation
BoxDecoration messageDecoration(BuildContext context,
{Color? color,
double radius = 8.0,
double tightRadius = 0.0,
MessagePosition? messagePosition = MessagePosition.isolated,
MessageFlow messageFlow = MessageFlow.outgoing}) {
double topLeftRadius;
double topRightRadius;
double botLeftRadius;
double botRightRadius;
final bool isTopSurrounded = messagePosition == MessagePosition.surrounded ||
messagePosition == MessagePosition.surroundedTop;
if (messageFlow == MessageFlow.outgoing) {
botLeftRadius = radius;
botRightRadius = 0;
topLeftRadius = radius;
topRightRadius = isTopSurrounded ? tightRadius : radius;
} else {
botLeftRadius = 0;
botRightRadius = radius;
topLeftRadius = isTopSurrounded ? tightRadius : radius;
topRightRadius = radius;
}
return BoxDecoration(
color: color ??
(messageFlow == MessageFlow.outgoing
? Theme.of(context).primaryColor
: CustomColors.incomingMessageContainerColor(context)),
borderRadius: BorderRadius.only(
topLeft: Radius.circular(topLeftRadius),
topRight: Radius.circular(topRightRadius),
bottomLeft: Radius.circular(botLeftRadius),
bottomRight: Radius.circular(botRightRadius)));
}