diff --git a/app/build.gradle b/app/build.gradle index 776643a033..ba0cb9464c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -103,7 +103,7 @@ android { defaultConfig { multiDexEnabled true versionCode 1500 - version "3.2.0-dev-k" + version "3.2.0-dev-m" buildConfigField "String", "VERSION", '"' + version + '"' buildConfigField "String", "BUILDVERSION", '"' + generateGitBuild() + '-' + generateDate() + '"' buildConfigField "String", "REMOTE", '"' + generateGitRemote() + '"' diff --git a/core/interfaces/src/main/kotlin/app/aaps/core/interfaces/rx/weardata/EventData.kt b/core/interfaces/src/main/kotlin/app/aaps/core/interfaces/rx/weardata/EventData.kt index 548e4b071b..e20a0796b9 100644 --- a/core/interfaces/src/main/kotlin/app/aaps/core/interfaces/rx/weardata/EventData.kt +++ b/core/interfaces/src/main/kotlin/app/aaps/core/interfaces/rx/weardata/EventData.kt @@ -186,7 +186,9 @@ sealed class EventData : Event() { val sgv: Double, val high: Double, // highLine val low: Double, // lowLine - val color: Int = 0 + val color: Int = 0, + val deltaMgdl: Double? = null, + val avgDeltaMgdl: Double? = null ) : EventData(), Comparable { override fun equals(other: Any?): Boolean = diff --git a/plugins/aps/src/main/res/values-da-rDK/strings.xml b/plugins/aps/src/main/res/values-da-rDK/strings.xml index 2ca881cbd8..4e9a7c55e3 100644 --- a/plugins/aps/src/main/res/values-da-rDK/strings.xml +++ b/plugins/aps/src/main/res/values-da-rDK/strings.xml @@ -83,6 +83,7 @@ SMB deaktiveret i præferencer UAM deaktiveret i præferencer Autosens deaktiveret i præferencer + Autosens deaktiveret i DynISF Begrænser IOB til %1$.1f IE på grund af %2$s max værdi i præferencer diff --git a/plugins/aps/src/main/res/values-fr-rFR/strings.xml b/plugins/aps/src/main/res/values-fr-rFR/strings.xml index ee7aa8d99d..bf5098394e 100644 --- a/plugins/aps/src/main/res/values-fr-rFR/strings.xml +++ b/plugins/aps/src/main/res/values-fr-rFR/strings.xml @@ -83,6 +83,7 @@ SMB désactivé dans les préférences Repas Non Signalé (RNS) désactivé dans les préférences Autosens désactivé dans les préférences + Autosens désactivé dans DynISF Limiter l’IA %1$.1f U en raison de la %2$s valeur Max dans les préférences diff --git a/plugins/constraints/src/main/res/values-es-rES/exam.xml b/plugins/constraints/src/main/res/values-es-rES/exam.xml index 175feca353..f4b6764dac 100644 --- a/plugins/constraints/src/main/res/values-es-rES/exam.xml +++ b/plugins/constraints/src/main/res/values-es-rES/exam.xml @@ -148,6 +148,7 @@ Ajustar el perfil al 150% hará que el tiempo de absorción de carbohidratos calculado sea mayor Si se ajusta el perfil al 150%, el tiempo de absorción de carbohidratos calculado será menor Establecer el perfil a 150% no afectará la absorción calculada de carbohidratos + https://wiki.aaps.app/en/latest/Usage/COB-calculation.html#how-does-aaps-calculate-the-cob-value El valor del IOB se ve afectado por las bases temporales ejecutadas. No se dará alta tasa basal temporal cuando su nivel de azúcar en sangre esté por debajo del objetivo. El IOB negativo durante un período sustancial en ausencia de ejercicio sugiere que tu perfil es demasiado fuerte y que se necesita menos insulina en tus ajustes. diff --git a/plugins/constraints/src/main/res/values-fr-rFR/exam.xml b/plugins/constraints/src/main/res/values-fr-rFR/exam.xml index f7e834f313..9093a01f65 100644 --- a/plugins/constraints/src/main/res/values-fr-rFR/exam.xml +++ b/plugins/constraints/src/main/res/values-fr-rFR/exam.xml @@ -148,6 +148,7 @@ Définir le profil à 150% allongera le temps d\'absorption des glucides calculé Définir le profil à 150% réduira le temps d\'absorption des glucides calculé Définir le profil à 150% n\'impactera pas le calcul de l\'absorption des glucides + https://wiki.aaps.app/fr/latest/Usage/COB-calculation.html#how-does-aaps-calculate-the-cob-value La valeur de l\'IA est impactée par les débits de basal temporaires émis. Une basale temp haute ne sera pas donnée quand votre glycémie est en dessous de la cible. Une IA négative pendant une période significative en l\'absence d\'exercice indique que votre profil est trop fort et qu\'il faut moins d\'insuline dans vos paramètres. diff --git a/plugins/constraints/src/main/res/values-nl-rNL/exam.xml b/plugins/constraints/src/main/res/values-nl-rNL/exam.xml index c6d4927d74..fec5e00751 100644 --- a/plugins/constraints/src/main/res/values-nl-rNL/exam.xml +++ b/plugins/constraints/src/main/res/values-nl-rNL/exam.xml @@ -148,6 +148,7 @@ Het profiel instellen op 150% zal de berekende koolhydraten absorptie verlengen Het profiel instellen op 150% zal de berekende koolhydraten absorptie verkorten Instellen van profiel op 150% heeft geen invloed op berekende koolhydraten absorptie + https://wiki.aaps.app/nl/latest/Usage/COB-calculation.html#how-does-aaps-calculate-the-cob-value De IOB-waarde wordt beïnvloed door eerdere tijdelijke basaalstanden. Een hoge tijdelijke basaal zal niet worden ingesteld wanneer je bloedsuiker onder het streefdoel ligt. Negatieve IOB voor een aanzienlijke periode vrij van inspanning, suggereert dat je profiel te hoog is ingesteld, dus dat er minder insuline nodig is. diff --git a/plugins/constraints/src/main/res/values-no-rNO/exam.xml b/plugins/constraints/src/main/res/values-no-rNO/exam.xml index 814af09aa8..21bb5132ca 100644 --- a/plugins/constraints/src/main/res/values-no-rNO/exam.xml +++ b/plugins/constraints/src/main/res/values-no-rNO/exam.xml @@ -148,6 +148,7 @@ Å sette profilen til 150% vil gjøre den beregnede karbohydrat absorpsjonstiden lengre Å sette profilen til 150% vil gjøre den beregnede karbohydrat absorpsjonstiden kortere Ved å sette profilen til 150% påvirkes ikke beregningen av absorbering av karbohydrater + https://wiki.aaps.app/en/latest/Usage/COB-calculation.html#how-does-aaps-calculate-the-cob-value IOB verdi påvirkes av midlertidige temp basaler. Høy temp basal vil ikke bli gitt når ditt blodsukker er under målverdi. Negativ IOB i en lengre periode selv om du ikke trener tyder på at profilen din gir for mye insulin og kanskje bør reduseres i innstillingene. diff --git a/plugins/main/src/main/AndroidManifest.xml b/plugins/main/src/main/AndroidManifest.xml index 3b6b9488e3..26e8677ac8 100644 --- a/plugins/main/src/main/AndroidManifest.xml +++ b/plugins/main/src/main/AndroidManifest.xml @@ -17,7 +17,7 @@ android:exported="false" android:theme="@style/AppTheme"> - + diff --git a/plugins/main/src/main/kotlin/app/aaps/plugins/main/general/wear/wearintegration/DataHandlerMobile.kt b/plugins/main/src/main/kotlin/app/aaps/plugins/main/general/wear/wearintegration/DataHandlerMobile.kt index e742bd3728..c45bd99c33 100644 --- a/plugins/main/src/main/kotlin/app/aaps/plugins/main/general/wear/wearintegration/DataHandlerMobile.kt +++ b/plugins/main/src/main/kotlin/app/aaps/plugins/main/general/wear/wearintegration/DataHandlerMobile.kt @@ -986,7 +986,9 @@ class DataHandlerMobile @Inject constructor( sgv = glucoseValue.recalculated, high = highLine, low = lowLine, - color = 0 + color = 0, + deltaMgdl = glucoseStatus?.delta, + avgDeltaMgdl = glucoseStatus?.shortAvgDelta ) } diff --git a/pump/medtrum/src/main/res/values-fr-rFR/strings.xml b/pump/medtrum/src/main/res/values-fr-rFR/strings.xml index b8685bbfcd..f4e37d7382 100644 --- a/pump/medtrum/src/main/res/values-fr-rFR/strings.xml +++ b/pump/medtrum/src/main/res/values-fr-rFR/strings.xml @@ -70,6 +70,7 @@ Activation en cours État inattendu : %1$s Aucun profil sélectionné. Veuillez sélectionner un profil et réessayez. + Aucun numéro de série connu. Veuillez entrer le numéro de série de la base de pompe dans les paramètres et réessayez. N° de série de la base de la pompe : %1$X Aucun Patch actif. Appuyez sur Suivant pour commencer le processus d\'activation. La base de la pompe ne doit pas être connectée au Patch avant l\'étape suivante ! diff --git a/pump/medtrum/src/main/res/values-nl-rNL/strings.xml b/pump/medtrum/src/main/res/values-nl-rNL/strings.xml index fa7e028eaf..aaaff5addd 100644 --- a/pump/medtrum/src/main/res/values-nl-rNL/strings.xml +++ b/pump/medtrum/src/main/res/values-nl-rNL/strings.xml @@ -70,6 +70,7 @@ Bezig met activatie Onverwachte staat: %1$s Geen profiel geselecteerd. Selecteer een profiel en probeer het opnieuw. + Geen serienummer bekend. Voer bij instellingen het serienummer van de pomp-basis in en probeer het opnieuw. Pomp basis serie nr.: %1$X Geen actieve patch. Druk op Volgende om het activeringsproces te starten. Pomp basis mag niet verbonden zijn met de patch tot de volgende stap! diff --git a/ui/src/main/res/xml/widget_info.xml b/ui/src/main/res/xml/widget_info.xml index c1052b5f8f..7914fa0f8f 100644 --- a/ui/src/main/res/xml/widget_info.xml +++ b/ui/src/main/res/xml/widget_info.xml @@ -1,6 +1,6 @@ 330) rotationAngle = 330f // if the glucose value is higher than 330 then show "HIGH" on the dial. ("HIGH" is at 330 degrees on the dial) if (rotationAngle != 0f && rotationAngle < 30) rotationAngle = 30f // if the glucose value is lower than 30 show "LOW" on the dial. ("LOW" is at 30 degrees on the dial) @@ -69,62 +66,41 @@ class SteampunkWatchface : BaseWatchFace() { lastEndDegrees = rotationAngle //store the final angle as a starting point for the next rotation. } - // set the delta gauge and rotate the delta pointer - var deltaIsNegative = 1f // by default go clockwise - if (singleBg.avgDelta != "--") { // if a legitimate delta value is - // received, - // then... - if (singleBg.avgDelta[0] == '-') deltaIsNegative = -1f //if the delta is negative, go counter-clockwise - val absAvgDelta = stringToFloat(singleBg.avgDelta.substring(1)) //get rid of the sign so it can be converted to float. + singleBg.avgDeltaMgdl?.let {// if a legitimate delta value is + val absAvgDelta = it.toFloat() var autoGranularity = "0" //auto-granularity off // ensure the delta gauge is the right units and granularity - if (singleBg.glucoseUnits != "-") { - if (singleBg.glucoseUnits == "mmol") { - if (sp.getString("delta_granularity", "2") == "4") { //Auto granularity - autoGranularity = - when { - absAvgDelta < 0.3 -> "3" // high if below 0.3 mmol/l - absAvgDelta < 0.5 -> "2" // medium if below 0.5 mmol/l - else -> "1" // low (init) - } + if (sp.getString("delta_granularity", "2") == "4") { //Auto granularity + autoGranularity = + when { + absAvgDelta < 5 -> "3" // high if below 5 mg/dl + absAvgDelta < 10 -> "2" // medium if below 10 mg/dl + else -> "1" // low (init) } - if (sp.getString("delta_granularity", "2") == "1" || autoGranularity == "1") { //low - binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mmol_10) - deltaRotationAngle = absAvgDelta * 30f - } - if (sp.getString("delta_granularity", "2") == "2" || autoGranularity == "2") { //medium - binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mmol_05) - deltaRotationAngle = absAvgDelta * 60f - } - if (sp.getString("delta_granularity", "2") == "3" || autoGranularity == "3") { //high - binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mmol_03) - deltaRotationAngle = absAvgDelta * 100f - } - } else { - if (sp.getString("delta_granularity", "2") == "4") { //Auto granularity - autoGranularity = - when { - absAvgDelta < 5 -> "3" // high if below 5 mg/dl - absAvgDelta < 10 -> "2" // medium if below 10 mg/dl - else -> "1" // low (init) - } - } - if (sp.getString("delta_granularity", "2") == "1" || autoGranularity == "1") { //low - binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mgdl_20) - deltaRotationAngle = absAvgDelta * 1.5f - } - if (sp.getString("delta_granularity", "2") == "2" || autoGranularity == "2") { //medium - binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mgdl_10) - deltaRotationAngle = absAvgDelta * 3f - } - if (sp.getString("delta_granularity", "2") == "3" || autoGranularity == "3") { //high - binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mgdl_5) - deltaRotationAngle = absAvgDelta * 6f - } - } + } + if (sp.getString("delta_granularity", "2") == "1" || autoGranularity == "1") { //low + if (singleBg.glucoseUnits == "mmol") + binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mmol_10) + else + binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mgdl_20) + deltaRotationAngle = absAvgDelta * 1.5f + } + if (sp.getString("delta_granularity", "2") == "2" || autoGranularity == "2") { //medium + if (singleBg.glucoseUnits == "mmol") + binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mmol_05) + else + binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mgdl_10) + deltaRotationAngle = absAvgDelta * 3f + } + if (sp.getString("delta_granularity", "2") == "3" || autoGranularity == "3") { //high + if (singleBg.glucoseUnits == "mmol") + binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mmol_03) + else + binding.secondaryLayout.setBackgroundResource(R.drawable.steampunk_gauge_mgdl_5) + deltaRotationAngle = absAvgDelta * 6f } if (deltaRotationAngle > 40) deltaRotationAngle = 40f - binding.deltaPointer.rotation = deltaRotationAngle * deltaIsNegative + binding.deltaPointer.rotation = deltaRotationAngle } // rotate the minute hand. diff --git a/wear/src/main/res/values-da-rDK/strings.xml b/wear/src/main/res/values-da-rDK/strings.xml index c813095672..8b1d49d32e 100644 --- a/wear/src/main/res/values-da-rDK/strings.xml +++ b/wear/src/main/res/values-da-rDK/strings.xml @@ -44,6 +44,7 @@ Vis BSI Vis Retningspil Vis Siden + Vis Gitter Mørk Fremhæv Basaler Vis forudsigelser diff --git a/wear/src/main/res/values-fr-rFR/strings.xml b/wear/src/main/res/values-fr-rFR/strings.xml index 080c8e4d1f..a06d81f46a 100644 --- a/wear/src/main/res/values-fr-rFR/strings.xml +++ b/wear/src/main/res/values-fr-rFR/strings.xml @@ -44,6 +44,9 @@ Afficher IGly Afficher Flèche Afficher Min Passées + Afficher DBT + Afficher Bolus & SMB + Afficher grille Sombre Surbrillance Basale Afficher prévisions diff --git a/wear/src/main/res/values-nl-rNL/strings.xml b/wear/src/main/res/values-nl-rNL/strings.xml index 7a87ccc1f8..6ae34ecb6d 100644 --- a/wear/src/main/res/values-nl-rNL/strings.xml +++ b/wear/src/main/res/values-nl-rNL/strings.xml @@ -44,6 +44,9 @@ Toon BGI Toon richtingspijl Toon tijd geleden + Toon TBR + Toon Bolus & SMB + Raster weergeven Donker Markeer basaalstanden Voorspellingen tonen