Przeglądaj źródła

Merge pull request #356 from MikePlante1/mmol_entry

Fix manual glucose entry for mmol/L
Deniz Cengiz 1 rok temu
rodzic
commit
03ef2295ce

+ 15 - 3
FreeAPS/Sources/Modules/DataTable/View/DataTableRootView.swift

@@ -37,6 +37,18 @@ extension DataTable {
             return formatter
             return formatter
         }
         }
 
 
+        private var glucoseEntryFormatter: NumberFormatter {
+            let formatter = NumberFormatter()
+            formatter.numberStyle = .decimal
+            formatter.maximumFractionDigits = 0
+            if state.units == .mmolL {
+                formatter.minimumFractionDigits = 0
+                formatter.maximumFractionDigits = 1
+            }
+            formatter.roundingMode = .down
+            return formatter
+        }
+
         private var dateFormatter: DateFormatter {
         private var dateFormatter: DateFormatter {
             let formatter = DateFormatter()
             let formatter = DateFormatter()
             formatter.timeStyle = .short
             formatter.timeStyle = .short
@@ -144,7 +156,7 @@ extension DataTable {
                                     text: $state.manualGlucose,
                                     text: $state.manualGlucose,
                                     placeholder: " ... ",
                                     placeholder: " ... ",
                                     shouldBecomeFirstResponder: true,
                                     shouldBecomeFirstResponder: true,
-                                    numberFormatter: glucoseFormatter
+                                    numberFormatter: glucoseEntryFormatter
                                 )
                                 )
                                 Text(state.units.rawValue).foregroundStyle(.secondary)
                                 Text(state.units.rawValue).foregroundStyle(.secondary)
                             }
                             }
@@ -152,8 +164,8 @@ extension DataTable {
 
 
                         Section {
                         Section {
                             HStack {
                             HStack {
-                                let limitLow: Decimal = state.units == .mmolL ? 0.8 : 40
-                                let limitHigh: Decimal = state.units == .mmolL ? 14 : 720
+                                let limitLow: Decimal = state.units == .mmolL ? 0.8 : 14
+                                let limitHigh: Decimal = state.units == .mmolL ? 40 : 720
 
 
                                 Button {
                                 Button {
                                     state.logManualGlucose()
                                     state.logManualGlucose()