From 415661d47722953f125b710fd9cd4383f0c00b29 Mon Sep 17 00:00:00 2001 From: Garth Vander Houwen Date: Mon, 20 Nov 2023 18:15:14 -0800 Subject: [PATCH] Make favorite icon yellow Add node list icon row --- Meshtastic/Views/Messages/UserList.swift | 2 +- .../Views/Messages/UserMessageList.swift | 2 +- .../Nodes/Helpers/Map/NodeMapSwiftUI.swift | 2 ++ .../Nodes/Helpers/Map/PositionPopover.swift | 4 ++-- .../Views/Nodes/Helpers/NodeDetail.swift | 2 +- .../Views/Nodes/Helpers/NodeListItem.swift | 24 +++++++++++++++++-- 6 files changed, 29 insertions(+), 7 deletions(-) diff --git a/Meshtastic/Views/Messages/UserList.swift b/Meshtastic/Views/Messages/UserList.swift index 43cc4b72..d35f6592 100644 --- a/Meshtastic/Views/Messages/UserList.swift +++ b/Meshtastic/Views/Messages/UserList.swift @@ -67,7 +67,7 @@ struct UserList: View { Spacer() if user.vip { Image(systemName: "star.fill") - .foregroundColor(.secondary) + .foregroundColor(.yellow) } if user.messageList.count > 0 { if lastMessageDay == currentDay { diff --git a/Meshtastic/Views/Messages/UserMessageList.swift b/Meshtastic/Views/Messages/UserMessageList.swift index c2458d71..39207c6b 100644 --- a/Meshtastic/Views/Messages/UserMessageList.swift +++ b/Meshtastic/Views/Messages/UserMessageList.swift @@ -38,7 +38,7 @@ struct UserMessageList: View { LazyVStack { ForEach( user.messageList ) { (message: MessageEntity) in if user.num != bleManager.connectedPeripheral?.num ?? -1 { - let currentUser: Bool = (bleManager.connectedPeripheral?.num ?? 0 == message.fromUser?.num ?? -1 ? true : false) + let currentUser: Bool = (Int64(UserDefaults.preferredPeripheralNum) == message.fromUser?.num ?? -1 ? true : false) if message.replyID > 0 { let messageReply = user.messageList.first(where: { $0.messageId == message.replyID }) diff --git a/Meshtastic/Views/Nodes/Helpers/Map/NodeMapSwiftUI.swift b/Meshtastic/Views/Nodes/Helpers/Map/NodeMapSwiftUI.swift index 0e07c8fd..95d32fe7 100644 --- a/Meshtastic/Views/Nodes/Helpers/Map/NodeMapSwiftUI.swift +++ b/Meshtastic/Views/Nodes/Helpers/Map/NodeMapSwiftUI.swift @@ -225,6 +225,8 @@ struct NodeMapSwiftUI: View { } } .onChange(of: node) { + isLookingAround = false + isShowingAltitude = false mostRecent = node.positions?.lastObject as? PositionEntity if node.positions?.count ?? 0 > 1 { position = .automatic diff --git a/Meshtastic/Views/Nodes/Helpers/Map/PositionPopover.swift b/Meshtastic/Views/Nodes/Helpers/Map/PositionPopover.swift index 461da979..995f89e0 100644 --- a/Meshtastic/Views/Nodes/Helpers/Map/PositionPopover.swift +++ b/Meshtastic/Views/Nodes/Helpers/Map/PositionPopover.swift @@ -129,7 +129,7 @@ struct PositionPopover: View { if position.nodePosition != nil { if position.nodePosition?.user?.vip ?? false { Image(systemName: "star.fill") - .foregroundColor(.accentColor) + .foregroundColor(.yellow) .symbolRenderingMode(.hierarchical) .font(.largeTitle) .padding(.bottom, 5) @@ -137,7 +137,7 @@ struct PositionPopover: View { if position.nodePosition?.hasEnvironmentMetrics ?? false { Image(systemName: "cloud.sun.rain") .foregroundColor(.accentColor) - .symbolRenderingMode(.hierarchical) + .symbolRenderingMode(.multicolor) .font(.largeTitle) .padding(.bottom) } diff --git a/Meshtastic/Views/Nodes/Helpers/NodeDetail.swift b/Meshtastic/Views/Nodes/Helpers/NodeDetail.swift index 58096955..b644f2b6 100644 --- a/Meshtastic/Views/Nodes/Helpers/NodeDetail.swift +++ b/Meshtastic/Views/Nodes/Helpers/NodeDetail.swift @@ -72,7 +72,7 @@ struct NodeDetail: View { NavigationLink { EnvironmentMetricsLog(node: node) } label: { - Image(systemName: "chart.xyaxis.line") + Image(systemName: "cloud.sun.rain") .symbolRenderingMode(.hierarchical) .font(.title) diff --git a/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift b/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift index 8ba12835..8f4ae4e2 100644 --- a/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift +++ b/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift @@ -23,7 +23,6 @@ struct NodeListItem: View { VStack(alignment: .leading) { CircleText(text: node.user?.shortName ?? "?", color: Color(UIColor(hex: UInt32(node.num))), circleSize: 65) .padding(.trailing, 5) - BatteryLevelCompact(node: node, font: .caption, iconFont: .callout, color: .accentColor) } VStack(alignment: .leading) { HStack { @@ -33,7 +32,7 @@ struct NodeListItem: View { if node.user?.vip ?? false { Spacer() Image(systemName: "star.fill") - .foregroundColor(.secondary) + .foregroundColor(.yellow) } } if connected { @@ -83,6 +82,27 @@ struct NodeListItem: View { LoRaSignalStrengthMeter(snr: node.snr, rssi: node.rssi, preset: preset ?? ModemPresets.longFast, compact: true) } } + HStack { + BatteryLevelCompact(node: node, font: .caption, iconFont: .callout, color: .accentColor) + + if node.hasPositions { + Image(systemName: "mappin.and.ellipse") + .symbolRenderingMode(.hierarchical) + .font(.callout) + + } + if node.hasEnvironmentMetrics { + Image(systemName: "cloud.sun.rain") + .symbolRenderingMode(.hierarchical) + .font(.callout) + } + if node.hasDetectionSensorMetrics { + Image(systemName: "sensor") + .symbolRenderingMode(.hierarchical) + .font(.callout) + } + } + .padding(.top, 3) } .frame(maxWidth: .infinity, alignment: .leading) }