From d2ad88e9e4b5e89452415e683c5526bec5f53230 Mon Sep 17 00:00:00 2001 From: Kateryna Kostiuk <kateryna.kostiuk@savoirfairelinux.com> Date: Thu, 23 Apr 2020 14:20:36 -0400 Subject: [PATCH] conversation: fix transfer status Change-Id: I4fe8e05e663ef8d18a473544fe9ed0940bb5c302 --- Ring/Ring/Database/DBManager.swift | 1 + .../Conversation/ConversationViewController.swift | 6 ++++-- .../Conversations/Conversation/ConversationViewModel.swift | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Ring/Ring/Database/DBManager.swift b/Ring/Ring/Database/DBManager.swift index ed4c36fcb..5355819dd 100644 --- a/Ring/Ring/Database/DBManager.swift +++ b/Ring/Ring/Database/DBManager.swift @@ -118,6 +118,7 @@ enum InteractionStatus: String { case .transferOngoing: return DataTransferStatus.ongoing case .transferSuccess: return DataTransferStatus.success case .transferError: return DataTransferStatus.error + case .displayed: return DataTransferStatus.success default: return DataTransferStatus.unknown } } diff --git a/Ring/Ring/Features/Conversations/Conversation/ConversationViewController.swift b/Ring/Ring/Features/Conversations/Conversation/ConversationViewController.swift index 5ed4bd4d6..cd50c74ef 100644 --- a/Ring/Ring/Features/Conversations/Conversation/ConversationViewController.swift +++ b/Ring/Ring/Features/Conversations/Conversation/ConversationViewController.swift @@ -972,7 +972,7 @@ extension ConversationViewController: UITableViewDataSource { item.bubblePosition() == .generated ? MessageCellGenerated.self : MessageCellGenerated.self } - if item.message.incoming && item.message.status != .displayed { + if item.message.incoming && item.message.status != .displayed && !item.message.isTransfer { self.viewModel .setMessageAsRead(daemonId: item.message.daemonId, messageId: item.message.messageId) @@ -1028,7 +1028,9 @@ extension ConversationViewController: UITableViewDataSource { guard let sectionNumber = tableView?.numberOfSections, let rowNumber = tableView?.numberOfRows(inSection: indexPath.section) else {return} if indexPath.section < sectionNumber && indexPath.section >= 0 { - if indexPath.row < rowNumber && indexPath.row >= 0 { + if indexPath.row < rowNumber && + indexPath.row >= 0 && + indexPath.row != tableView?.numberOfRows(inSection: indexPath.section) { tableView? .reloadItemsAtIndexPaths([indexPath], animationStyle: .top) diff --git a/Ring/Ring/Features/Conversations/Conversation/ConversationViewModel.swift b/Ring/Ring/Features/Conversations/Conversation/ConversationViewModel.swift index 0e3668305..1e0959673 100644 --- a/Ring/Ring/Features/Conversations/Conversation/ConversationViewModel.swift +++ b/Ring/Ring/Features/Conversations/Conversation/ConversationViewModel.swift @@ -366,7 +366,7 @@ class ConversationViewModel: Stateable, ViewModel { }).disposed(by: disposeBag) } - func setMessageAsRead (daemonId: String, messageId: Int64) { + func setMessageAsRead(daemonId: String, messageId: Int64) { guard let account = self.accountService.currentAccount else { return } -- GitLab