Skip to content

Commit 359b99a

Browse files
committed
msglist [nfc]: Make a common codepath for prevMessage != null
I.e., the top of the `else` that belongs to the `if (prevMessage == null)`.
1 parent 5539e14 commit 359b99a

File tree

1 file changed

+15
-14
lines changed

1 file changed

+15
-14
lines changed

lib/model/message_list.dart

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -448,25 +448,26 @@ mixin _MessageSequence {
448448
required MessageListMessageBaseItem Function(bool canShareSender) buildItem,
449449
}) {
450450
final bool canShareSender;
451-
if (
452-
prevMessage == null
453-
|| oneMessagePerBlock
454-
|| !haveSameRecipient(prevMessage, message)
455-
) {
451+
if (prevMessage == null) {
456452
items.add(MessageListRecipientHeaderItem(message));
457453
canShareSender = false;
458454
} else {
459-
assert(items.last is MessageListMessageBaseItem);
460-
final prevMessageItem = items.last as MessageListMessageBaseItem;
461-
assert(identical(prevMessageItem.message, prevMessage));
462-
assert(prevMessageItem.isLastInBlock);
463-
prevMessageItem.isLastInBlock = false;
464-
465-
if (!messagesSameDay(prevMessageItem.message, message)) {
466-
items.add(MessageListDateSeparatorItem(message));
455+
if (oneMessagePerBlock || !haveSameRecipient(prevMessage, message)) {
456+
items.add(MessageListRecipientHeaderItem(message));
467457
canShareSender = false;
468458
} else {
469-
canShareSender = prevMessageItem.message.senderId == message.senderId;
459+
assert(items.last is MessageListMessageBaseItem);
460+
final prevMessageItem = items.last as MessageListMessageBaseItem;
461+
assert(identical(prevMessageItem.message, prevMessage));
462+
assert(prevMessageItem.isLastInBlock);
463+
prevMessageItem.isLastInBlock = false;
464+
465+
if (!messagesSameDay(prevMessageItem.message, message)) {
466+
items.add(MessageListDateSeparatorItem(message));
467+
canShareSender = false;
468+
} else {
469+
canShareSender = prevMessageItem.message.senderId == message.senderId;
470+
}
470471
}
471472
}
472473
final item = buildItem(canShareSender);

0 commit comments

Comments
 (0)