From ee795b74c44ff1783dfa017c5cbe0e23d417b203 Mon Sep 17 00:00:00 2001 From: Garth Vander Houwen Date: Tue, 29 Aug 2023 07:53:52 -0700 Subject: [PATCH] More unread messages infrastructure --- Meshtastic/Persistence/UserEntityExtension.swift | 6 +++--- Meshtastic/Views/ContentView.swift | 4 +--- Meshtastic/Views/Messages/UserMessageList.swift | 6 ++++++ 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/Meshtastic/Persistence/UserEntityExtension.swift b/Meshtastic/Persistence/UserEntityExtension.swift index 79324752..14cc6de1 100644 --- a/Meshtastic/Persistence/UserEntityExtension.swift +++ b/Meshtastic/Persistence/UserEntityExtension.swift @@ -10,17 +10,17 @@ import Foundation extension UserEntity { var messageList: [MessageEntity] { - self.value(forKey: "allMessages") as? [MessageEntity] ?? [MessageEntity]() } var adminMessageList: [MessageEntity] { - self.value(forKey: "adminMessages") as? [MessageEntity] ?? [MessageEntity]() } var unreadMessages: Int { - self.receivedMessages?.count ?? 0 + + let unreadMessages = receivedMessages?.filter{ ($0 as AnyObject).read == false } ?? [] + return unreadMessages.count } } diff --git a/Meshtastic/Views/ContentView.swift b/Meshtastic/Views/ContentView.swift index cb294a23..4e2f059e 100644 --- a/Meshtastic/Views/ContentView.swift +++ b/Meshtastic/Views/ContentView.swift @@ -13,7 +13,7 @@ struct ContentView: View { Label("messages", systemImage: "message") } .tag(Tab.contacts) - .badge(42) + // .badge(42) Connect() .tabItem { Label("bluetooth", systemImage: "antenna.radiowaves.left.and.right") @@ -24,13 +24,11 @@ struct ContentView: View { Label("nodes", systemImage: "flipphone") } .tag(Tab.nodes) - .badge(11) NodeMap() .tabItem { Label("map", systemImage: "map") } .tag(Tab.map) - .badge(4) Settings() .tabItem { Label("settings", systemImage: "gear") diff --git a/Meshtastic/Views/Messages/UserMessageList.swift b/Meshtastic/Views/Messages/UserMessageList.swift index 2ad25e52..73b07ea7 100644 --- a/Meshtastic/Views/Messages/UserMessageList.swift +++ b/Meshtastic/Views/Messages/UserMessageList.swift @@ -216,8 +216,14 @@ struct UserMessageList: View { } }, secondaryButton: .cancel()) } + .onAppear { + if !message.read { + print("\(message.messageId) read") + } + } } } + // End Message List ForEach } } .padding([.top])