messageBumble static method
Widget
messageBumble(
- BuildContext context, {
- required ChatMessage message,
- bool isviewed = false,
Implementation
static Widget messageBumble(
BuildContext context, {
required ChatMessage message,
bool isviewed = false,
}) {
return Container(
padding: const EdgeInsets.all(10),
child: Row(
mainAxisAlignment:
message.isMe ? MainAxisAlignment.end : MainAxisAlignment.start,
children: [
if (!message.isMe)
Container(
padding: const EdgeInsets.only(right: 5),
child: CircleAvatar(
backgroundColor: Colors.transparent,
foregroundImage: CachedNetworkImageProvider(
message.user.avatar!.mediaURL.minURL.value),
),
),
Container(
constraints: BoxConstraints(
maxWidth: MediaQuery.of(context).size.width - 70),
padding: const EdgeInsets.all(10),
decoration: BoxDecoration(
color: message.isMe
? Colors.blue
: const Color.fromARGB(255, 212, 78, 69),
borderRadius: message.isMe
? const BorderRadius.only(
topLeft: Radius.circular(12),
topRight: Radius.circular(0),
bottomLeft: Radius.circular(12),
bottomRight: Radius.circular(12),
)
: const BorderRadius.only(
topLeft: Radius.circular(0),
topRight: Radius.circular(12),
bottomLeft: Radius.circular(12),
bottomRight: Radius.circular(12),
),
),
child: Column(
children: [
Stack(
children: [
Padding(
padding: const EdgeInsets.only(right: 15),
child: Text(
message.messageContext.toString(),
style: TextStyle(
color: message.isMe ? Colors.white : Colors.white,
),
),
),
Visibility(
visible: message.isMe,
child: Positioned(
bottom: -3,
right: 0,
child: Icon(
isviewed ? Icons.done_all : Icons.done,
color: isviewed
? const Color.fromRGBO(116, 243, 20, 1)
: const Color.fromARGB(255, 222, 224, 220),
size: 14,
), // Okundu işareti
),
),
],
),
],
),
),
],
),
);
}