make it work for multi device

This commit is contained in:
Ryan Zhao 2021-08-02 10:32:47 +10:00
parent 94c1879263
commit b827b9e1ba
2 changed files with 4 additions and 1 deletions

View File

@ -5,6 +5,8 @@ public final class UnsendRequest: ControlMessage {
public var timestamp: UInt64?
public var author: String?
public override var isSelfSendValid: Bool { true }
// MARK: Validation
public override var isValid: Bool {
guard super.isValid else { return false }

View File

@ -134,8 +134,9 @@ public final class MessageSender : NSObject {
// a configuration message
// a sync message
// a closed group control message of type `new`
// an unsend request
let isNewClosedGroupControlMessage = given(message as? ClosedGroupControlMessage) { if case .new = $0.kind { return true } else { return false } } ?? false
guard !isSelfSend || message is ConfigurationMessage || isSyncMessage || isNewClosedGroupControlMessage else {
guard !isSelfSend || message is ConfigurationMessage || isSyncMessage || isNewClosedGroupControlMessage || message is UnsendRequest else {
storage.write(with: { transaction in
MessageSender.handleSuccessfulMessageSend(message, to: destination, using: transaction)
seal.fulfill(())