Don't show deleted message in home screen

This commit is contained in:
Ryan Zhao 2021-08-05 14:08:13 +10:00
parent e1b99be6f2
commit 7e640fb6ac
2 changed files with 12 additions and 2 deletions

View File

@ -228,8 +228,11 @@ extension MessageReceiver {
let transaction = transaction as! YapDatabaseReadWriteTransaction
if let author = message.author, let timestamp = message.timestamp,
let messageToDelete = userPublicKey == message.sender ? TSOutgoingMessage.find(withTimestamp: timestamp) : TSIncomingMessage.find(withAuthorId: author, timestamp: timestamp, transaction: transaction) {
if let incomingMessage = messageToDelete as? TSIncomingMessage, let notificationIdentifier = incomingMessage.notificationIdentifier, !notificationIdentifier.isEmpty {
SSKEnvironment.shared.notificationsManager!.cancelNotification(notificationIdentifier)
if let incomingMessage = messageToDelete as? TSIncomingMessage {
incomingMessage.markAsReadNow(withSendReadReceipt: false, transaction: transaction)
if let notificationIdentifier = incomingMessage.notificationIdentifier, !notificationIdentifier.isEmpty {
SSKEnvironment.shared.notificationsManager!.cancelNotification(notificationIdentifier)
}
}
if let serverHash = messageToDelete.serverHash {
SnodeAPI.deleteMessage(publicKey: author, serverHashes: [serverHash]).retainUntilComplete()

View File

@ -314,6 +314,13 @@ BOOL IsNoteToSelfEnabled(void)
if (interaction.isDynamicInteraction) {
return NO;
}
if ([interaction isKindOfClass:[TSMessage class]]) {
TSMessage *message = (TSMessage *)interaction;
if (message.isDeleted) {
return NO;
}
}
return YES;
}