From 68ffd81390f231234ec1a680e50570da06d80189 Mon Sep 17 00:00:00 2001 From: Michael Kirk Date: Mon, 9 Jul 2018 12:21:07 -0600 Subject: [PATCH] Only show breaks between new days // FREEBIE --- .../ConversationViewController.m | 22 +++++-------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/Signal/src/ViewControllers/ConversationView/ConversationViewController.m b/Signal/src/ViewControllers/ConversationView/ConversationViewController.m index c174667be..25dcc800d 100644 --- a/Signal/src/ViewControllers/ConversationView/ConversationViewController.m +++ b/Signal/src/ViewControllers/ConversationView/ConversationViewController.m @@ -4879,25 +4879,15 @@ typedef enum : NSUInteger { OWSAssert(viewItemTimestamp > 0); BOOL shouldShowDate = NO; - if (!canShowDate) { - shouldShowDate = NO; + if (previousViewItemTimestamp == 0) { shouldShowDateOnNextViewItem = YES; - } else if (shouldShowDateOnNextViewItem) { - shouldShowDate = YES; - shouldShowDateOnNextViewItem = NO; - } else if (previousViewItemTimestamp > 0 - && ![DateUtil isSameDayWithTimestamp:previousViewItemTimestamp timestamp:viewItemTimestamp]) { - // Ensure we always have a date break between messages on different days. + } else if (![DateUtil isSameDayWithTimestamp:previousViewItemTimestamp timestamp:viewItemTimestamp]) { + shouldShowDateOnNextViewItem = YES; + } + + if (shouldShowDateOnNextViewItem && canShowDate) { shouldShowDate = YES; shouldShowDateOnNextViewItem = NO; - } else { - OWSAssert(previousViewItemTimestamp > 0); - uint64_t timeDifferenceMs = viewItemTimestamp - previousViewItemTimestamp; - static const uint64_t kShowTimeIntervalMs = 5 * kMinuteInMs; - if (timeDifferenceMs > kShowTimeIntervalMs) { - shouldShowDate = YES; - } - shouldShowDateOnNextViewItem = NO; } viewItem.shouldShowDate = shouldShowDate;