From 5796bbd8581c7ea8b607140d24a685eb75580fbf Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Tue, 20 Jun 2017 11:22:30 -0400 Subject: [PATCH 1/2] Max out the unread count at 99. // FREEBIE --- .../ViewControllers/ConversationView/MessagesViewController.m | 3 ++- Signal/src/ViewControllers/InboxTableViewCell.m | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Signal/src/ViewControllers/ConversationView/MessagesViewController.m b/Signal/src/ViewControllers/ConversationView/MessagesViewController.m index ae0e1e3aa..65e59c783 100644 --- a/Signal/src/ViewControllers/ConversationView/MessagesViewController.m +++ b/Signal/src/ViewControllers/ConversationView/MessagesViewController.m @@ -3812,7 +3812,8 @@ typedef enum : NSUInteger { - (void)updateBackButtonUnreadCount { AssertIsOnMainThread(); - self.backButtonUnreadCount = [self.messagesManager unreadMessagesCountExcept:self.thread]; + // Max out the unread count at 99. + self.backButtonUnreadCount = MIN((NSUInteger)99, [self.messagesManager unreadMessagesCountExcept:self.thread]); } - (void)setBackButtonUnreadCount:(NSUInteger)unreadCount diff --git a/Signal/src/ViewControllers/InboxTableViewCell.m b/Signal/src/ViewControllers/InboxTableViewCell.m index 2be8a27de..f97b43fc4 100644 --- a/Signal/src/ViewControllers/InboxTableViewCell.m +++ b/Signal/src/ViewControllers/InboxTableViewCell.m @@ -117,6 +117,8 @@ const NSUInteger kContactPictureViewDiameter = 52; NSAttributedString *attributedDate = [self dateAttributedString:thread.lastMessageDate]; NSUInteger unreadCount = [[TSMessagesManager sharedManager] unreadMessagesInThread:thread]; + // Max out the per-thread unread count at 99. + unreadCount = MIN((NSUInteger)99, unreadCount); self.nameLabel.text = name; self.snippetLabel.attributedText = snippetText; From de453b29608fee8c63ab9ce5d9dbfdd07d0e35b1 Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Tue, 20 Jun 2017 13:12:51 -0400 Subject: [PATCH 2/2] Respond to CR. // FREEBIE --- .../ConversationView/MessagesViewController.m | 8 +++++--- Signal/src/ViewControllers/InboxTableViewCell.m | 6 +++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Signal/src/ViewControllers/ConversationView/MessagesViewController.m b/Signal/src/ViewControllers/ConversationView/MessagesViewController.m index 65e59c783..bb8915ba1 100644 --- a/Signal/src/ViewControllers/ConversationView/MessagesViewController.m +++ b/Signal/src/ViewControllers/ConversationView/MessagesViewController.m @@ -3812,8 +3812,7 @@ typedef enum : NSUInteger { - (void)updateBackButtonUnreadCount { AssertIsOnMainThread(); - // Max out the unread count at 99. - self.backButtonUnreadCount = MIN((NSUInteger)99, [self.messagesManager unreadMessagesCountExcept:self.thread]); + self.backButtonUnreadCount = [self.messagesManager unreadMessagesCountExcept:self.thread]; } - (void)setBackButtonUnreadCount:(NSUInteger)unreadCount @@ -3829,7 +3828,10 @@ typedef enum : NSUInteger { _backButtonUnreadCountView.hidden = unreadCount <= 0; OWSAssert(_backButtonUnreadCountLabel != nil); - _backButtonUnreadCountLabel.text = [NSString stringWithFormat:@"%lu", (unsigned long)unreadCount]; + + // Max out the unread count at 99+. + const NSUInteger kMaxUnreadCount = 99; + _backButtonUnreadCountLabel.text = [@(MIN(kMaxUnreadCount, unreadCount)) stringValue]; } #pragma mark 3D Touch Preview Actions diff --git a/Signal/src/ViewControllers/InboxTableViewCell.m b/Signal/src/ViewControllers/InboxTableViewCell.m index f97b43fc4..e20b1619c 100644 --- a/Signal/src/ViewControllers/InboxTableViewCell.m +++ b/Signal/src/ViewControllers/InboxTableViewCell.m @@ -117,8 +117,6 @@ const NSUInteger kContactPictureViewDiameter = 52; NSAttributedString *attributedDate = [self dateAttributedString:thread.lastMessageDate]; NSUInteger unreadCount = [[TSMessagesManager sharedManager] unreadMessagesInThread:thread]; - // Max out the per-thread unread count at 99. - unreadCount = MIN((NSUInteger)99, unreadCount); self.nameLabel.text = name; self.snippetLabel.attributedText = snippetText; @@ -220,7 +218,9 @@ const NSUInteger kContactPictureViewDiameter = 52; [_messageCounter addSubview:_unreadLabel]; } - _unreadLabel.text = [[NSNumber numberWithUnsignedInteger:unreadMessages] stringValue]; + // Max out the unread count at 99+. + const NSUInteger kMaxUnreadCount = 99; + _unreadLabel.text = [@(MIN(kMaxUnreadCount, unreadMessages)) stringValue]; [_unreadLabel sizeToFit]; CGPoint offset = CGPointMake(0.0f, 5.0f);