diff --git a/Meshtastic Client.xcodeproj/project.pbxproj b/Meshtastic Client.xcodeproj/project.pbxproj
index 31eb73c9..f3a834f3 100644
--- a/Meshtastic Client.xcodeproj/project.pbxproj
+++ b/Meshtastic Client.xcodeproj/project.pbxproj
@@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
- objectVersion = 52;
+ objectVersion = 55;
objects = {
/* Begin PBXBuildFile section */
@@ -403,7 +403,7 @@
};
};
buildConfigurationList = DDC2E14F26CE248E0042C5E4 /* Build configuration list for PBXProject "Meshtastic Client" */;
- compatibilityVersion = "Xcode 9.3";
+ compatibilityVersion = "Xcode 13.0";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
@@ -659,7 +659,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
- MARKETING_VERSION = 1.25.6;
+ MARKETING_VERSION = 1.25.7;
PRODUCT_BUNDLE_IDENTIFIER = gvh.MeshtasticClient;
PRODUCT_NAME = "$(TARGET_NAME)";
SUPPORTS_MACCATALYST = NO;
@@ -686,7 +686,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
- MARKETING_VERSION = 1.25.6;
+ MARKETING_VERSION = 1.25.7;
PRODUCT_BUNDLE_IDENTIFIER = gvh.MeshtasticClient;
PRODUCT_NAME = "$(TARGET_NAME)";
SUPPORTS_MACCATALYST = NO;
diff --git a/MeshtasticClient/Info.plist b/MeshtasticClient/Info.plist
index 1b1c689f..21a3f47f 100644
--- a/MeshtasticClient/Info.plist
+++ b/MeshtasticClient/Info.plist
@@ -44,6 +44,7 @@
UIBackgroundModes
bluetooth-central
+ location
UILaunchScreen
diff --git a/MeshtasticClient/Views/ContentView.swift b/MeshtasticClient/Views/ContentView.swift
index e32940ff..76dfb16c 100644
--- a/MeshtasticClient/Views/ContentView.swift
+++ b/MeshtasticClient/Views/ContentView.swift
@@ -21,25 +21,25 @@ struct ContentView: View {
Channels()
.tabItem {
Label("Messages", systemImage: "text.bubble")
- .symbolRenderingMode(.hierarchical)
+ .symbolVariant(.none)
}
.tag(Tab.messages)
NodeList()
.tabItem {
Label("Nodes", systemImage: "flipphone")
- .symbolRenderingMode(.hierarchical)
+ .symbolVariant(.none)
}
.tag(Tab.nodes)
NodeMap()
.tabItem {
Label("Mesh Map", systemImage: "map")
- .symbolRenderingMode(.hierarchical)
+ .symbolVariant(.none)
}
.tag(Tab.map)
Connect()
.tabItem {
Label("Bluetooth", systemImage: "dot.radiowaves.left.and.right")
- .symbolRenderingMode(.hierarchical)
+ .symbolVariant(.none)
}
.tag(Tab.ble)
//AppSettings()
diff --git a/MeshtasticClient/Views/Messages/Channels.swift b/MeshtasticClient/Views/Messages/Channels.swift
index 3ddccb7e..1675e3e7 100644
--- a/MeshtasticClient/Views/Messages/Channels.swift
+++ b/MeshtasticClient/Views/Messages/Channels.swift
@@ -19,15 +19,14 @@ struct Channels: View {
HStack {
Image(systemName: "dial.max.fill")
- .resizable()
- .aspectRatio(contentMode: .fit)
- .frame(width: 70, height: 70)
- .foregroundColor(Color.blue)
+ .font(.system(size: 62))
.symbolRenderingMode(.hierarchical)
.padding(.trailing)
+ .foregroundColor(Color.blue)
Text("Primary")
.font(.largeTitle)
+
}.padding()
}
}
diff --git a/MeshtasticClient/Views/Messages/Messages.swift b/MeshtasticClient/Views/Messages/Messages.swift
index 2a55ff55..c9eca918 100644
--- a/MeshtasticClient/Views/Messages/Messages.swift
+++ b/MeshtasticClient/Views/Messages/Messages.swift
@@ -75,6 +75,24 @@ struct Messages: View {
}
})
.keyboardType(.default)
+ .toolbar
+ {
+ ToolbarItemGroup(placement: .keyboard) {
+
+ Button("Dismiss Keyboard") {
+ focusedField = nil
+ }
+ .font(.subheadline)
+
+ Spacer()
+
+ ProgressView("Bytes: \(totalBytes) / 200", value: Double(totalBytes), total: 200)
+ .frame(width: 130)
+ .padding(5)
+ .font(.subheadline)
+ .accentColor(Color.blue)
+ }
+ }
.padding(.horizontal, 8)
.focused($focusedField, equals: .messageText)
.multilineTextAlignment(.leading)
@@ -106,22 +124,6 @@ struct Messages: View {
}
.padding(.all, 15)
- HStack (alignment: .top ) {
-
- if focusedField != nil {
- Button("Dismiss Keyboard") {
- focusedField = nil
- }
- .font(.subheadline)
- Spacer()
- ProgressView("Bytes: \(totalBytes) / 200", value: Double(totalBytes), total: 200)
- .frame(width: 130)
- .padding(.bottom, 7)
- .font(.subheadline)
- .accentColor(Color.blue)
- }
- }
- .padding(.horizontal)
}
}
.navigationTitle("Channel - Primary")
diff --git a/MeshtasticClient/Views/Nodes/NodeList.swift b/MeshtasticClient/Views/Nodes/NodeList.swift
index ea803764..ca4339b9 100644
--- a/MeshtasticClient/Views/Nodes/NodeList.swift
+++ b/MeshtasticClient/Views/Nodes/NodeList.swift
@@ -28,16 +28,19 @@ struct NodeList: View {
List {
if meshData.nodes.count == 0 {
- Text("Scan for Radios").font(.largeTitle).listRowSeparator(.hidden)
- Text("No LoRa Mesh Nodes Found").font(.title2).listRowSeparator(.hidden)
+ Text("Scan for Radios").font(.largeTitle)
+ //.listRowSeparator(.hidden)
+ Text("No LoRa Mesh Nodes Found").font(.title2)
+ //.listRowSeparator(.hidden)
Text("Go to the bluetooth section in the bottom right menu and click the Start Scanning button to scan for nearby radios and find your Meshtastic device. Make sure your device is powered on and near your phone or tablet.")
.font(.body)
- .listRowSeparator(.hidden)
+ //.listRowSeparator(.hidden)
Text("Once the device shows under Available Devices touch the device you want to connect to and it will pull node information over BLE and populate the node list and mesh map in the Meshtastic app.")
- .listRowSeparator(.hidden)
+ //.listRowSeparator(.hidden)
Text("Views with bluetooth functionality will show an indicator in the upper right hand corner show if bluetooth is on, and if a device is connected.")
- .listRowSeparator(.hidden)
- Spacer().listRowSeparator(.hidden)
+ //.listRowSeparator(.hidden)
+ Spacer()
+ //.listRowSeparator(.hidden)
}
else {
Toggle(isOn: $showLocationOnly) {