From 23f2fc51366c9f7ec09359b2b97bc3815444ddc3 Mon Sep 17 00:00:00 2001 From: Garth Vander Houwen Date: Tue, 28 Mar 2023 06:50:23 -0700 Subject: [PATCH] Clean up form for position config --- Meshtastic/Enums/IntervalEnums.swift | 1 + Meshtastic/Views/Map/Custom/MapViewSwiftUI.swift | 15 ++++----------- Meshtastic/Views/Nodes/NodeDetail.swift | 5 ++--- Meshtastic/Views/Nodes/NodeMap.swift | 1 - .../Views/Settings/Config/PositionConfig.swift | 2 +- 5 files changed, 8 insertions(+), 16 deletions(-) diff --git a/Meshtastic/Enums/IntervalEnums.swift b/Meshtastic/Enums/IntervalEnums.swift index 8a36933a..7e73f7f7 100644 --- a/Meshtastic/Enums/IntervalEnums.swift +++ b/Meshtastic/Enums/IntervalEnums.swift @@ -88,6 +88,7 @@ enum SenderIntervals: Int, CaseIterable, Identifiable { enum UpdateIntervals: Int, CaseIterable, Identifiable { + case fiveSeconds = 5 case tenSeconds = 10 case fifteenSeconds = 15 case thirtySeconds = 30 diff --git a/Meshtastic/Views/Map/Custom/MapViewSwiftUI.swift b/Meshtastic/Views/Map/Custom/MapViewSwiftUI.swift index 687d3130..86f8c0a8 100644 --- a/Meshtastic/Views/Map/Custom/MapViewSwiftUI.swift +++ b/Meshtastic/Views/Map/Custom/MapViewSwiftUI.swift @@ -25,7 +25,6 @@ struct MapViewSwiftUI: UIViewRepresentable { let userTrackingMode: MKUserTrackingMode let showNodeHistory: Bool let showRouteLines: Bool - let showMultipleNodes: Bool @AppStorage("meshMapRecentering") private var recenter: Bool = false // Offline Map Tiles @AppStorage("lastUpdatedLocalMapFile") private var lastUpdatedLocalMapFile = 0 @@ -137,7 +136,7 @@ struct MapViewSwiftUI: UIViewRepresentable { var lineIndex = 0 for position in latest { - let nodePositions = positions.filter { $0.time! >= Calendar.current.startOfDay(for: Date()) && $0.nodePosition?.num ?? 0 == position.nodePosition?.num ?? -1 } + let nodePositions = positions.filter { $0.nodePosition?.num ?? 0 == position.nodePosition?.num ?? -1 } let lineCoords = nodePositions.map ({ (position) -> CLLocationCoordinate2D in return position.nodeCoordinate! @@ -154,15 +153,9 @@ struct MapViewSwiftUI: UIViewRepresentable { } if userTrackingMode == MKUserTrackingMode.none { mapView.showsUserLocation = false + mapView.addAnnotations(showNodeHistory ? positions : latest) if recenter { - if !showMultipleNodes { - mapView.fit(annotations:showNodeHistory ? positions : latest, andShow: true) - } else { - mapView.addAnnotations(showNodeHistory ? positions : latest) - mapView.fitAllAnnotations() - } - } else { - mapView.addAnnotations(showNodeHistory ? positions : latest) + mapView.fit(annotations:showNodeHistory || showRouteLines ? positions : latest, andShow: false) } } else { // Centering Done by tracking mode @@ -362,7 +355,7 @@ struct MapViewSwiftUI: UIViewRepresentable { let index = Int(titleString.components(separatedBy: "-").last ?? "0") let renderer = MKPolylineRenderer(polyline: routePolyline) renderer.strokeColor = parent.lineColors[index ?? 0] - renderer.lineWidth = 7 + renderer.lineWidth = 8 return renderer } return MKOverlayRenderer() diff --git a/Meshtastic/Views/Nodes/NodeDetail.swift b/Meshtastic/Views/Nodes/NodeDetail.swift index a2ba57c0..24634d6c 100644 --- a/Meshtastic/Views/Nodes/NodeDetail.swift +++ b/Meshtastic/Views/Nodes/NodeDetail.swift @@ -60,7 +60,7 @@ struct NodeDetail: View { if node.positions?.count ?? 0 > 0 { ZStack { let positionArray = node.positions?.array as? [PositionEntity] ?? [] - let lastThousand = Array(positionArray.prefix(1000)) + let lastTenThousand = Array(positionArray.prefix(10000)) // let todaysPositions = positionArray.filter { $0.time! >= Calendar.current.startOfDay(for: Date()) } ZStack { MapViewSwiftUI(onLongPress: { coord in @@ -72,12 +72,11 @@ struct NodeDetail: View { editingWaypoint = wpId presentingWaypointForm = true } - }, positions: lastThousand, waypoints: Array(waypoints), + }, positions: lastTenThousand, waypoints: Array(waypoints), mapViewType: mapType, userTrackingMode: MKUserTrackingMode.none, showNodeHistory: meshMapShowNodeHistory, showRouteLines: meshMapShowRouteLines, - showMultipleNodes: false, customMapOverlay: self.customMapOverlay ) VStack(alignment: .leading) { diff --git a/Meshtastic/Views/Nodes/NodeMap.swift b/Meshtastic/Views/Nodes/NodeMap.swift index 3bf9c241..650a76a5 100644 --- a/Meshtastic/Views/Nodes/NodeMap.swift +++ b/Meshtastic/Views/Nodes/NodeMap.swift @@ -79,7 +79,6 @@ struct NodeMap: View { userTrackingMode: userTrackingMode, showNodeHistory: meshMapShowNodeHistory, showRouteLines: meshMapShowRouteLines, - showMultipleNodes: true, customMapOverlay: self.customMapOverlay ) VStack { diff --git a/Meshtastic/Views/Settings/Config/PositionConfig.swift b/Meshtastic/Views/Settings/Config/PositionConfig.swift index 28829f44..6b36e95c 100644 --- a/Meshtastic/Views/Settings/Config/PositionConfig.swift +++ b/Meshtastic/Views/Settings/Config/PositionConfig.swift @@ -146,7 +146,7 @@ struct PositionConfig: View { } } .pickerStyle(DefaultPickerStyle()) - Text("The minimum distance change to be considered for a smart position broadcast.") + Text("The minimum distance change in meters to be considered for a smart position broadcast.") .font(.caption) } }