add comment

This commit is contained in:
ryanzhao 2021-07-20 11:46:02 +10:00
parent fcca7f3076
commit bd7e9b5943
1 changed files with 4 additions and 0 deletions

View File

@ -222,6 +222,10 @@ final class ConversationVC : BaseVC, ConversationViewModelDelegate, OWSConversat
Storage.read { transaction in
unreadCount = self.thread.unreadMessageCount(transaction: transaction)
}
// When the unread message count is more than the number of a page of viewItems,
// the screen will scroll to bottom instead of the correct first unread message.
// The unreadIndicatorIndex is calculated during loading the viewItems, it is
// supposed to be accurate.
DispatchQueue.main.async {
let unreadIndicatorIndex = self.viewModel.viewState.unreadIndicatorIndex?.intValue ?? (self.viewItems.count - self.unreadViewItems.count)
if unreadCount > 0, let viewItem = self.viewItems[ifValid: unreadIndicatorIndex], let interactionID = viewItem.interaction.uniqueId {