From be0556f68a159458fc7db96ae8c8e17712109f44 Mon Sep 17 00:00:00 2001 From: Michael Kirk Date: Wed, 21 Sep 2016 12:35:56 -0400 Subject: [PATCH] fix "last active" date // FREEBIE --- Signal/Signal-Info.plist | 2 +- Signal/src/views/OWSDeviceTableViewCell.m | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Signal/Signal-Info.plist b/Signal/Signal-Info.plist index 6e3258591..fa3e63b11 100644 --- a/Signal/Signal-Info.plist +++ b/Signal/Signal-Info.plist @@ -38,7 +38,7 @@ CFBundleVersion - 2.5.0.17 + 2.5.0.18 ITSAppUsesNonExemptEncryption LOGS_EMAIL diff --git a/Signal/src/views/OWSDeviceTableViewCell.m b/Signal/src/views/OWSDeviceTableViewCell.m index 350cbe71a..b1daa05c3 100644 --- a/Signal/src/views/OWSDeviceTableViewCell.m +++ b/Signal/src/views/OWSDeviceTableViewCell.m @@ -18,8 +18,19 @@ NS_ASSUME_NONNULL_BEGIN NSString *lastSeenFormatString = NSLocalizedString( @"DEVICE_LAST_ACTIVE_AT_LABEL", @"{{Short Date}} when device last communicated with Signal Server."); + + NSDate *displayedLastSeenAt; + // lastSeenAt is stored at day granularity. At midnight UTC. + // Making it likely that when you first link a device it will + // be "last seen" the day before it was created, which looks broken. + if ([device.lastSeenAt compare:device.createdAt] == NSOrderedDescending) { + displayedLastSeenAt = device.lastSeenAt; + } else { + displayedLastSeenAt = device.createdAt; + } + self.lastSeenLabel.text = - [NSString stringWithFormat:lastSeenFormatString, [DateUtil.dateFormatter stringFromDate:device.createdAt]]; + [NSString stringWithFormat:lastSeenFormatString, [DateUtil.dateFormatter stringFromDate:displayedLastSeenAt]]; } @end