From 24a4f709fa122798be5f457341d3776d823553e9 Mon Sep 17 00:00:00 2001 From: Garth Vander Houwen Date: Sun, 4 Aug 2024 16:18:13 -0700 Subject: [PATCH] Tighten up the hardware card --- .../Views/Nodes/Helpers/NodeInfoItem.swift | 62 ++++++++++--------- .../Views/Nodes/Helpers/NodeListItem.swift | 1 - 2 files changed, 32 insertions(+), 31 deletions(-) diff --git a/Meshtastic/Views/Nodes/Helpers/NodeInfoItem.swift b/Meshtastic/Views/Nodes/Helpers/NodeInfoItem.swift index 0335a6fd..a2ec475d 100644 --- a/Meshtastic/Views/Nodes/Helpers/NodeInfoItem.swift +++ b/Meshtastic/Views/Nodes/Helpers/NodeInfoItem.swift @@ -20,54 +20,56 @@ struct NodeInfoItem: View { var body: some View { ViewThatFits(in: .horizontal) { - HStack { - Spacer() - CircleText( - text: node.user?.shortName ?? "?", - color: Color(UIColor(hex: UInt32(node.num))), - circleSize: 75 - ) + VStack { if let user = node.user { - VStack(alignment: .center) { + HStack(alignment: .center) { if user.hwModel != "UNSET" { Image(user.hardwareImage ?? "UNSET") .resizable() .aspectRatio(contentMode: .fit) - .frame(width: 65, height: 65) + .frame(width: 75, height: 75) .cornerRadius(5) Text(String(node.user!.hwModel ?? "unset".localized)) - .font(.caption2) - .frame(maxWidth: 80) + .font(.callout) } else { Image(systemName: "person.crop.circle.badge.questionmark") .resizable() .aspectRatio(contentMode: .fit) - .frame(width: 65, height: 65) + .frame(width: 75, height: 75) .cornerRadius(5) Text(String("incomplete".localized)) - .font(.caption) - .frame(maxWidth: 80) + .font(.callout) } } } - if node.snr != 0 && !node.viaMqtt { - VStack(alignment: .center) { - let signalStrength = getLoRaSignalStrength(snr: node.snr, rssi: node.rssi, preset: modemPreset) - LoRaSignalStrengthIndicator(signalStrength: signalStrength) - Text("Signal \(signalStrength.description)").font(.footnote) - Text("SNR \(String(format: "%.2f", node.snr))dB") - .foregroundColor(getSnrColor(snr: node.snr, preset: modemPreset)) - .font(.caption2) - Text("RSSI \(node.rssi)dB") - .foregroundColor(getRssiColor(rssi: node.rssi)) - .font(.caption) + HStack { + Spacer() + CircleText( + text: node.user?.shortName ?? "?", + color: Color(UIColor(hex: UInt32(node.num))), + circleSize: 75 + ) + if node.snr != 0 && !node.viaMqtt { + VStack(alignment: .center) { + let signalStrength = getLoRaSignalStrength(snr: node.snr, rssi: node.rssi, preset: modemPreset) + LoRaSignalStrengthIndicator(signalStrength: signalStrength) + Text("Signal \(signalStrength.description)").font(.footnote) + Text("SNR \(String(format: "%.2f", node.snr))dB") + .foregroundColor(getSnrColor(snr: node.snr, preset: modemPreset)) + .font(.caption2) + Text("RSSI \(node.rssi)dB") + .foregroundColor(getRssiColor(rssi: node.rssi)) + .font(.caption) + } + .frame(minWidth: 110, maxWidth: 175) + } else { + Spacer() } - .frame(minWidth: 110, maxWidth: 175) + if node.telemetries?.count ?? 0 > 0 { + BatteryGauge(node: node) + } + Spacer() } - if node.telemetries?.count ?? 0 > 0 { - BatteryGauge(node: node) - } - Spacer() } } } diff --git a/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift b/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift index 061d45ce..daefa65e 100644 --- a/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift +++ b/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift @@ -21,7 +21,6 @@ struct NodeListItem: View { LazyVStack(alignment: .leading) { HStack { VStack(alignment: .leading) { - CircleText(text: node.user?.shortName ?? "?", color: Color(UIColor(hex: UInt32(node.num))), circleSize: 70) .padding(.trailing, 5) BatteryLevelCompact(node: node, font: .caption, iconFont: .callout, color: .accentColor)