[MessageListView] Remove unwanted null checks from separator logic

Signed-off-by: Sahil Kumar <[email protected]>
This commit is contained in:
Sahil Kumar
2021-01-08 23:37:55 +05:30
parent 0258173935
commit 3dd451e511
+13 -15
View File
@@ -342,12 +342,11 @@ class _MessageListViewState extends State<MessageListView> {
if (i == messages.length + 1) return Offstage(); if (i == messages.length + 1) return Offstage();
if (i == 0) return SizedBox(height: 30); if (i == 0) return SizedBox(height: 30);
final message = messages[i]; final message = messages[i];
final nextMessage = i > 0 ? messages[i - 1] : null; final nextMessage = messages[i - 1];
if (nextMessage != null && if (!Jiffy(message.createdAt.toLocal()).isSame(
!Jiffy(message.createdAt.toLocal()).isSame( nextMessage.createdAt.toLocal(),
nextMessage.createdAt.toLocal(), Units.DAY,
Units.DAY, )) {
)) {
final divider = widget.dateDividerBuilder != null final divider = widget.dateDividerBuilder != null
? widget.dateDividerBuilder( ? widget.dateDividerBuilder(
nextMessage.createdAt.toLocal(), nextMessage.createdAt.toLocal(),
@@ -360,15 +359,14 @@ class _MessageListViewState extends State<MessageListView> {
child: divider, child: divider,
); );
} }
num timeDiff = 0; final timeDiff =
if (nextMessage != null) { Jiffy(nextMessage.createdAt.toLocal()).diff(
timeDiff = Jiffy(nextMessage.createdAt.toLocal()).diff( message.createdAt.toLocal(),
message.createdAt.toLocal(), Units.MINUTE,
Units.MINUTE, );
);
} final isNextUserSame =
final isNextUserSame = (i - 1 >= 0) && message.user.id == nextMessage.user?.id;
message.user.id == messages[i - 1]?.user?.id;
final isThread = message.replyCount > 0; final isThread = message.replyCount > 0;
if (timeDiff >= 1 || !isNextUserSame || isThread) { if (timeDiff >= 1 || !isNextUserSame || isThread) {
return SizedBox(height: 8); return SizedBox(height: 8);