diff --git a/Meshtastic/Extensions/CoreData/MessageEntityExtension.swift b/Meshtastic/Extensions/CoreData/MessageEntityExtension.swift index 5f3d76ef..81e106b8 100644 --- a/Meshtastic/Extensions/CoreData/MessageEntityExtension.swift +++ b/Meshtastic/Extensions/CoreData/MessageEntityExtension.swift @@ -17,4 +17,8 @@ extension MessageEntity { let time = messageTimestamp <= 0 ? receivedTimestamp : messageTimestamp return Date(timeIntervalSince1970: TimeInterval(time)) } + + var canRetry: Bool { + return ackError == 9 || ackError == 5 || ackError == 3 + } } diff --git a/Meshtastic/Views/Messages/ChannelMessageList.swift b/Meshtastic/Views/Messages/ChannelMessageList.swift index 81a8bdc2..4ec56ec9 100644 --- a/Meshtastic/Views/Messages/ChannelMessageList.swift +++ b/Meshtastic/Views/Messages/ChannelMessageList.swift @@ -119,7 +119,7 @@ struct ChannelMessageList: View { .padding(.bottom) .id(channel.allPrivateMessages.firstIndex(of: message)) - if currentUser && (message.ackError == 9 || message.ackError == 5 || message.ackError == 3) { + if currentUser && message.canRetry { RetryButton(message: message) } diff --git a/Meshtastic/Views/Messages/UserMessageList.swift b/Meshtastic/Views/Messages/UserMessageList.swift index 64bf9aeb..1eb2ddc8 100644 --- a/Meshtastic/Views/Messages/UserMessageList.swift +++ b/Meshtastic/Views/Messages/UserMessageList.swift @@ -113,7 +113,7 @@ struct UserMessageList: View { .padding(.bottom) .id(user.messageList.firstIndex(of: message)) - if currentUser && (message.ackError == 9 || message.ackError == 5 || message.ackError == 3) || (message.receivedACK && !message.realACK) { + if currentUser && message.canRetry || (message.receivedACK && !message.realACK) { RetryButton(message: message) }