From f790c06b27235a8be929ef04cc007d13bf08b1c7 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Mon, 4 Oct 2021 00:34:46 +0200 Subject: [PATCH 1/4] fix recalculated bucketed data --- .../plugins/iob/iobCobCalculator/AutosensDataStore.kt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/info/nightscout/androidaps/plugins/iob/iobCobCalculator/AutosensDataStore.kt b/core/src/main/java/info/nightscout/androidaps/plugins/iob/iobCobCalculator/AutosensDataStore.kt index 4a2a20edbd..e1b9401ad8 100644 --- a/core/src/main/java/info/nightscout/androidaps/plugins/iob/iobCobCalculator/AutosensDataStore.kt +++ b/core/src/main/java/info/nightscout/androidaps/plugins/iob/iobCobCalculator/AutosensDataStore.kt @@ -237,7 +237,10 @@ class AutosensDataStore { } val newBucketedData = ArrayList() var currentTime = bgReadings[0].timestamp - bgReadings[0].timestamp % T.mins(5).msecs() - currentTime = adjustToReferenceTime(currentTime) + val adjustedTime = adjustToReferenceTime(currentTime) + // after adjusting time may be newer. In this case use T-5min + if (adjustedTime > currentTime) currentTime = adjustedTime - T.mins(5).msecs() + else currentTime = adjustedTime aapsLogger.debug("Adjusted time " + dateUtil.dateAndTimeAndSecondsString(currentTime)) //log.debug("First reading: " + new Date(currentTime).toLocaleString()); while (true) { From 5f46c9c58566923cbf8cf6057b4c1fe4dda0e483 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 4 Oct 2021 08:06:27 +0000 Subject: [PATCH 2/4] Bump dagger_version from 2.39 to 2.39.1 Bumps `dagger_version` from 2.39 to 2.39.1. Updates `dagger-compiler` from 2.39 to 2.39.1 - [Release notes](https://github.com/google/dagger/releases) - [Changelog](https://github.com/google/dagger/blob/master/CHANGELOG.md) - [Commits](https://github.com/google/dagger/compare/dagger-2.39...dagger-2.39.1) Updates `dagger-android-processor` from 2.39 to 2.39.1 - [Release notes](https://github.com/google/dagger/releases) - [Changelog](https://github.com/google/dagger/blob/master/CHANGELOG.md) - [Commits](https://github.com/google/dagger/compare/dagger-2.39...dagger-2.39.1) Updates `dagger-android` from 2.39 to 2.39.1 - [Release notes](https://github.com/google/dagger/releases) - [Changelog](https://github.com/google/dagger/blob/master/CHANGELOG.md) - [Commits](https://github.com/google/dagger/compare/dagger-2.39...dagger-2.39.1) Updates `dagger-android-support` from 2.39 to 2.39.1 - [Release notes](https://github.com/google/dagger/releases) - [Changelog](https://github.com/google/dagger/blob/master/CHANGELOG.md) - [Commits](https://github.com/google/dagger/compare/dagger-2.39...dagger-2.39.1) --- updated-dependencies: - dependency-name: com.google.dagger:dagger-compiler dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: com.google.dagger:dagger-android-processor dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: com.google.dagger:dagger-android dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: com.google.dagger:dagger-android-support dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 1ef4a476aa..69f3e7777a 100644 --- a/build.gradle +++ b/build.gradle @@ -9,7 +9,7 @@ buildscript { rxkotlin_version = '2.4.0' room_version = '2.3.0' lifecycle_version = '2.3.1' - dagger_version = '2.39' + dagger_version = '2.39.1' coroutinesVersion = '1.4.1' activityVersion = '1.3.1' fragmentktx_version = '1.3.6' From 7a0dc362c4e497d26fd489361a60ad8979f8faef Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Mon, 4 Oct 2021 14:55:23 +0200 Subject: [PATCH 3/4] New Crowdin updates (#703) * Update source file strings.xml * Update source file strings.xml * New translations strings.xml (Italian) * New translations strings.xml (Italian) * New translations strings.xml (Italian) * Update source file strings.xml * Update source file strings.xml * New translations strings.xml (German) * New translations strings.xml (German) * New translations strings.xml (Slovak) * New translations strings.xml (Slovak) * New translations strings.xml (Slovak) * New translations strings.xml (Slovak) * New translations strings.xml (Slovak) * New translations strings.xml (Slovak) * New translations strings.xml (French) * New translations strings.xml (French) * New translations strings.xml (French) * New translations strings.xml (French) * Update source file strings.xml * New translations strings.xml (Hebrew) * New translations strings.xml (Hebrew) * New translations strings.xml (Hebrew) * New translations strings.xml (Czech) * New translations strings.xml (Czech) * New translations strings.xml (Czech) * New translations strings.xml (Czech) * New translations strings.xml (German) --- app/src/main/res/values-cs-rCZ/strings.xml | 1 + app/src/main/res/values-de-rDE/strings.xml | 1 + app/src/main/res/values-iw-rIL/strings.xml | 1 + .../src/main/res/values-cs-rCZ/strings.xml | 4 +++ .../src/main/res/values-de-rDE/strings.xml | 4 +++ .../src/main/res/values-fr-rFR/strings.xml | 4 +++ .../src/main/res/values-iw-rIL/strings.xml | 4 +++ .../src/main/res/values-sk-rSK/strings.xml | 4 +++ core/src/main/res/values-cs-rCZ/strings.xml | 1 + core/src/main/res/values-de-rDE/strings.xml | 1 + core/src/main/res/values-fr-rFR/strings.xml | 15 +++++++++ core/src/main/res/values-iw-rIL/strings.xml | 1 + core/src/main/res/values-sk-rSK/strings.xml | 15 +++++++++ .../src/main/res/values-sk-rSK/strings.xml | 32 +++++++++++++++++++ .../src/main/res/values-cs-rCZ/strings.xml | 4 +++ .../src/main/res/values-fr-rFR/strings.xml | 4 +++ .../src/main/res/values-it-rIT/strings.xml | 2 ++ .../src/main/res/values-sk-rSK/strings.xml | 4 +++ .../src/main/res/values-fr-rFR/strings.xml | 12 +++++++ .../src/main/res/values-it-rIT/strings.xml | 9 ++++++ .../src/main/res/values-sk-rSK/strings.xml | 12 +++++++ .../src/main/res/values-sk-rSK/strings.xml | 9 ++++++ 22 files changed, 144 insertions(+) diff --git a/app/src/main/res/values-cs-rCZ/strings.xml b/app/src/main/res/values-cs-rCZ/strings.xml index 795c121236..f4263041b4 100644 --- a/app/src/main/res/values-cs-rCZ/strings.xml +++ b/app/src/main/res/values-cs-rCZ/strings.xml @@ -494,6 +494,7 @@ Odesílat data do xDrip+ V xDrip+ vyberte zdroj dat 640g/Eversense Glykémie z NS + NSGL Kalkulace glykémie Kalkulace bolusového IOB Kalkulace bazálního IOB diff --git a/app/src/main/res/values-de-rDE/strings.xml b/app/src/main/res/values-de-rDE/strings.xml index 977b5a5b32..2375b013bd 100644 --- a/app/src/main/res/values-de-rDE/strings.xml +++ b/app/src/main/res/values-de-rDE/strings.xml @@ -494,6 +494,7 @@ Sende BZ-Werte zu xDrip+ Wähle in xDrip+ 640g/Eversense als Daten-Quelle. Nightscout-Client BZ + NS BZ BZ Berechnung Bolus-IOB Berechnung Basal-IOB Berechnung diff --git a/app/src/main/res/values-iw-rIL/strings.xml b/app/src/main/res/values-iw-rIL/strings.xml index a7b672e3c4..5b7d0981f8 100644 --- a/app/src/main/res/values-iw-rIL/strings.xml +++ b/app/src/main/res/values-iw-rIL/strings.xml @@ -494,6 +494,7 @@ שליחת נתוני סוכר אל xDrip ב-xDrip בחרו 640g/Eversense כמקור נתונים רמת סוכר מ-NSClient + סוכר NS חישוב רמת הסוכר חישוב IOB של בולוס חישוב IOB של בזאלי diff --git a/automation/src/main/res/values-cs-rCZ/strings.xml b/automation/src/main/res/values-cs-rCZ/strings.xml index 4f30a85513..5b993f0975 100644 --- a/automation/src/main/res/values-cs-rCZ/strings.xml +++ b/automation/src/main/res/values-cs-rCZ/strings.xml @@ -38,6 +38,9 @@ Glykémie není k dispozici Glykémie %1$s %2$.0f %3$s Glykémie %1$s %2$.1f %3$s + Dočasný cíl neexistuje + Dočasný cíl %1$s %2$.0f %3$s + Dočasný cíl %1$s %2$.1f %3$s Profil pct %1$s %2$d IOB %1$s %2$.1f A @@ -86,6 +89,7 @@ Zem. šířka: Zem. délka: Glykémie [%1$s]: + Cíl [%1$s]: Poslední bolus Poslední bolus %1$s před %2$s min COB diff --git a/automation/src/main/res/values-de-rDE/strings.xml b/automation/src/main/res/values-de-rDE/strings.xml index acb6f2480a..2845766192 100644 --- a/automation/src/main/res/values-de-rDE/strings.xml +++ b/automation/src/main/res/values-de-rDE/strings.xml @@ -38,6 +38,9 @@ Glukosewert nicht verfügbar Glukosewert %1$s %2$.0f %3$s Glukosewert %1$s %2$.1f %3$s + Kein temporäres Ziel vorhanden + Temp. Zielwert %1$s %2$.0f %3$s + Temp. Zielwert %1$s %2$.1f %3$s Profil-Prozentsatz %1$s %2$d IOB %1$s %2$.1f Und @@ -86,6 +89,7 @@ Breitengrad: Längengrad: Glukosewert [%1$s]: + Zielwert [%1$s]: Letzter Bolus vor Letzter Bolus vor %1$s %2$s Min COB diff --git a/automation/src/main/res/values-fr-rFR/strings.xml b/automation/src/main/res/values-fr-rFR/strings.xml index 44315399d7..a42641de69 100644 --- a/automation/src/main/res/values-fr-rFR/strings.xml +++ b/automation/src/main/res/values-fr-rFR/strings.xml @@ -38,6 +38,9 @@ La glycémie n\'est pas disponible Glycémie %1$s %2$.0f %3$s Glycémie %1$s %2$.1f %3$s + La Cible Temp. n\'existe pas + Cible Temp. %1$s %2$.0f %3$s + Cible Temp. %1$s %2$.1f %3$s Profil %% %1$s %2$d IA %1$s %2$.1f Et @@ -86,6 +89,7 @@ Lat : Long : Glycémie [%1$s] : + Cible [%1$s]: Lors du dernier Bolus Heure du dernier bolus %1$s il y a %2$s min GA diff --git a/automation/src/main/res/values-iw-rIL/strings.xml b/automation/src/main/res/values-iw-rIL/strings.xml index bb745d18cc..46a2efd8ef 100644 --- a/automation/src/main/res/values-iw-rIL/strings.xml +++ b/automation/src/main/res/values-iw-rIL/strings.xml @@ -38,6 +38,9 @@ גלוקוז אינו זמין גלוקוז %1$s %2$.0f %3$s גלוקוז %1$s %2$.1f %3$s + ערך המטרה הזמני לא קיים + ערך מטרה זמני %1$s %2$.0f %3$s + ערך מטרה זמני %1$s %2$.1f %3$s אחוז פרופיל %1$s %2$d אינסולין פעיל %1$s %2$.1f וגם @@ -86,6 +89,7 @@ רוחב: אורך: גלוקוז [%1$s]: + מטרה [%1$s]: בולוס אחרון הבולוס האחרון היה לפני %1$s %2$s דק\' פחמ\' פעילות diff --git a/automation/src/main/res/values-sk-rSK/strings.xml b/automation/src/main/res/values-sk-rSK/strings.xml index 4ab6b045d5..b06dc622ac 100644 --- a/automation/src/main/res/values-sk-rSK/strings.xml +++ b/automation/src/main/res/values-sk-rSK/strings.xml @@ -38,6 +38,9 @@ Glykémia nedostupná Glykémia %1$s %2$.0f %3$s Glykémia %1$s %2$.1f %3$s + Dočasný cieľ neexistuje + Doč. cieľ %1$s %2$.0f %3$s + Doč. cieľ %1$s %2$.1f %3$s Percentuálny profil %1$s %2$d IOB %1$s %2$.1f A @@ -86,6 +89,7 @@ Lat: Lon: Glykémia [%1$s]: + Cieľ [%1$s]: Od posledného bolusu Čas posledného bolusu: pred %1$s %2$s min COB diff --git a/core/src/main/res/values-cs-rCZ/strings.xml b/core/src/main/res/values-cs-rCZ/strings.xml index 225b6b206a..33289e55b3 100644 --- a/core/src/main/res/values-cs-rCZ/strings.xml +++ b/core/src/main/res/values-cs-rCZ/strings.xml @@ -196,6 +196,7 @@ OpenAPS vypnuto Výměna baterie pumpy Dočasný cíl + Hodnota dočasného cíle Dočasný cíl konec Bolusová kalkulačka Glukoměr diff --git a/core/src/main/res/values-de-rDE/strings.xml b/core/src/main/res/values-de-rDE/strings.xml index d5b5d2adb6..70ba734fdd 100644 --- a/core/src/main/res/values-de-rDE/strings.xml +++ b/core/src/main/res/values-de-rDE/strings.xml @@ -196,6 +196,7 @@ OpenAPS offline Pumpenbatterie-Wechsel Temporäres Ziel + Temporärer Zielwert Temporäres Ziel abbrechen Bolus-Rechner Finger diff --git a/core/src/main/res/values-fr-rFR/strings.xml b/core/src/main/res/values-fr-rFR/strings.xml index 06efb1d051..756cafcab6 100644 --- a/core/src/main/res/values-fr-rFR/strings.xml +++ b/core/src/main/res/values-fr-rFR/strings.xml @@ -196,6 +196,7 @@ OpenAPS hors ligne Changement pile pompe Cible Temp + Valeur de Cible Temporaire Annuler Cible Temporaire Assistant Bolus Doigt @@ -385,6 +386,20 @@ BOUCLE SUPPRIMÉE AUTRE + Cible basse du profil + Cible haute du profil + Valeur basse de Cible Temp. + Valeur haute de Cible Temp. + Valeur de Cible Temporaire + Valeur DAI du profil + Valeur de sensibilité du profil + Basale maximale du profil + Basale actuelle + Rapport glucides/insuline de profil + %1$.2f limité à %2$.2f + \"%1$s\" est en dehors des limites + \"%1$s\" %2$.2f est en dehors des limites + Valeur de Basal %1$d jour %1$d jours diff --git a/core/src/main/res/values-iw-rIL/strings.xml b/core/src/main/res/values-iw-rIL/strings.xml index 34c0d220b3..c62d2a2dfe 100644 --- a/core/src/main/res/values-iw-rIL/strings.xml +++ b/core/src/main/res/values-iw-rIL/strings.xml @@ -196,6 +196,7 @@ OpenAPS במצב לא מקוון החלפת סוללת משאבה ערך מטרה זמני + ערך המטרה הזמני ביטול ערך מטרה זמני אשף בולוס אצבע diff --git a/core/src/main/res/values-sk-rSK/strings.xml b/core/src/main/res/values-sk-rSK/strings.xml index 02bf0993a0..10c4e30f10 100644 --- a/core/src/main/res/values-sk-rSK/strings.xml +++ b/core/src/main/res/values-sk-rSK/strings.xml @@ -196,6 +196,7 @@ OpenAPS vypnuté Výmena batérie v pumpe Dočasný cieľ + Hodnota dočasného cieľa Zrušiť dočasný cieľ Bolusová kalkulačka Prst @@ -385,6 +386,20 @@ UZAVRETÝ OKRUH ODSTRÁNENÝ INÉ + Dolný cieľ profilu + Horný cieľ profilu + Dolná hodnota dočasného cieľa + Horná hodnota dočasného cieľa + Hodnota dočasného cieľa + Profilová hodnota DIA + Profilová hodnota citlivosti + Profilová maximálna hodnota bazálu + Aktuálna hodnota bazálu + Profilový inzulino-sacharidový pomer + %1$.2f obmedzené na %2$.2f + »%1$s« je mimo pevne nastavené limity + »%1$s« %2$.2f je mimo pevne nastavených limitov + Hodnota bazálu %1$d deň %1$d dní diff --git a/diaconn/src/main/res/values-sk-rSK/strings.xml b/diaconn/src/main/res/values-sk-rSK/strings.xml index 71526bae89..b0da6f5f9a 100644 --- a/diaconn/src/main/res/values-sk-rSK/strings.xml +++ b/diaconn/src/main/res/values-sk-rSK/strings.xml @@ -63,6 +63,38 @@ Hlasitosť alarmu nízka stredná + vysoká + Čas pred vypnutím displeja [sekundy] + ULOŽIŤ NASTAVENIA DO PUMPY + Jazyk + Rýchlosť bolusu + Čínština + Kórejčina + Angličtina + "10 " + 10 + 20 + 30 + nízka + Zablokované vydávanie + Upozornenie na nízky stav batérie + Upozornenie na nedostatok inzulínu + Je požadovaná výmena batérie + Je požadovaná výmena inzulínu + pump_version + aps_incarnation_no + pump_serial_no + Zaznamenať výmenu zásobníka + Pridať udalosť \"Výmena inzulínu\" do portálu starostlivosti, pokiaľ je zistená v histórii + Zaznamenať výmenu kanyly + Pridať udalosť \"Výmena setu\" do portálu starostlivosti, pokiaľ je zistená v histórii + Pridať udalosť \"Výmena batérie\" do portálu starostlivosti, pokiaľ je zistená v histórii + Zaznamenať výmenu batérie + Prebieha synchronizácia logov + Nedostatok inzulínu + Slabá batéria + Plnenie ihly :%1$.2fJI + Plnenie hadičky :%1$.2fJI Resetovať po obnovení na továrenské nastavenia Resetovať po núdzovom vypnutí Resetovať po výmene batérie diff --git a/omnipod-common/src/main/res/values-cs-rCZ/strings.xml b/omnipod-common/src/main/res/values-cs-rCZ/strings.xml index bb5e830b06..a3c487cd99 100644 --- a/omnipod-common/src/main/res/values-cs-rCZ/strings.xml +++ b/omnipod-common/src/main/res/values-cs-rCZ/strings.xml @@ -111,6 +111,10 @@ Jiné Výstrahy Potvrzovací pípnutí + Oznámení + Zvuk pro nejistý dočasný bazál povolen + Zvuk oznámení pro nejisté SMB povoleno + Zvuk oznámení pro nejistý bolus povolen Žádný aktivní Pod Probíhá nastavování (čeká se na aktivaci Podu) diff --git a/omnipod-common/src/main/res/values-fr-rFR/strings.xml b/omnipod-common/src/main/res/values-fr-rFR/strings.xml index 1aef96fcf9..5d0849d85f 100644 --- a/omnipod-common/src/main/res/values-fr-rFR/strings.xml +++ b/omnipod-common/src/main/res/values-fr-rFR/strings.xml @@ -111,6 +111,10 @@ Autres Alertes Bips de confirmation + Notifications + Son pour les notifications DBT incertains activé + Son pour les notifications SMB incertains activé + Son pour les notifications bolus incertains activé Pas de Pod actif Configuration en cours (en attente d\'activation du Pod) diff --git a/omnipod-common/src/main/res/values-it-rIT/strings.xml b/omnipod-common/src/main/res/values-it-rIT/strings.xml index deb65859b5..4bb95f407b 100644 --- a/omnipod-common/src/main/res/values-it-rIT/strings.xml +++ b/omnipod-common/src/main/res/values-it-rIT/strings.xml @@ -111,6 +111,8 @@ Altro Avvisi BIP di conferma + Notifiche + Suono notifiche TBR incerto abilitato Nessun pod attivo Configurazione in corso (attesa attivazione pod) diff --git a/omnipod-common/src/main/res/values-sk-rSK/strings.xml b/omnipod-common/src/main/res/values-sk-rSK/strings.xml index afd53a9869..8be1c68069 100644 --- a/omnipod-common/src/main/res/values-sk-rSK/strings.xml +++ b/omnipod-common/src/main/res/values-sk-rSK/strings.xml @@ -111,6 +111,10 @@ Iné Výstrahy Potvrdzovacie pípnutia + Notifikácie + Zvuk upozornenia pre neistý dočasný bazál povolený + Zvuk upozornenia pre neistý SMB povolený + Zvuk upozornenia pre neistý bolus povolený Žiadny aktívny Pod Prebieha inštalácia (čaká sa na aktiváciu Podu) diff --git a/omnipod-dash/src/main/res/values-fr-rFR/strings.xml b/omnipod-dash/src/main/res/values-fr-rFR/strings.xml index 5cc149124d..a178c01d4f 100644 --- a/omnipod-dash/src/main/res/values-fr-rFR/strings.xml +++ b/omnipod-dash/src/main/res/values-fr-rFR/strings.xml @@ -4,6 +4,18 @@ Intégration de la pompe Omnipod Dash (le nouveau modèle Bluetooth, avec un bouchon d\'aiguille bleue). + État Bluetooth + Adresse Bluetooth + Firmware %1$s / Bluetooth %2$s + Qualité de connexion + État de l\'injection + Remplissez avec suffisamment d\'insuline pour 3 jours.\n\nVous devez entendre deux bips lors du remplissage du Pod. Ils indiquent que la quantité minimale de 85u a été ajouté. Assurez-vous de vider complètement la seringue de remplissage après avoir entendu les deux bips.\n\nAprès le remplissage du Pod, vous pouvez presserSuivant\n\nRemarque :N\'enlever pas la protection de l\'aiguille du Pod à cette étape. + Tentative d\'appairage de d\'amorçage du nouveau Pod.\n\nUne fois le processus d\'initialisation terminé avec succès, vous pouvez appuyer sur Suivant. + Son activé en cas de notification de pause d\'injection + Echec de connexion au pod + Trop de pods trouvés pour l\'activation + Impossible de trouver un pod disponible pour l\'activation + Erreur générique : %1$s diff --git a/omnipod-dash/src/main/res/values-it-rIT/strings.xml b/omnipod-dash/src/main/res/values-it-rIT/strings.xml index 5f55d28285..d2863c37b3 100644 --- a/omnipod-dash/src/main/res/values-it-rIT/strings.xml +++ b/omnipod-dash/src/main/res/values-it-rIT/strings.xml @@ -4,6 +4,15 @@ Integrazione del microinfusore Omnipod Dash (il nuovo modello, abilitato al Bluetooth e con la protezione ago di colore blu). + Stato bluetooth + Indirizzo bluetooth + Firmware %1$s / Bluetooth %2$s + Qualità connessione + Stato erogazione + Impossibile connettersi al pod + Trovati troppi pod per l\'attivazione + Nessun pod disponibile per l\'attivazione + Errore generico: %1$s diff --git a/omnipod-dash/src/main/res/values-sk-rSK/strings.xml b/omnipod-dash/src/main/res/values-sk-rSK/strings.xml index 029f44a38e..bb75fed0a6 100644 --- a/omnipod-dash/src/main/res/values-sk-rSK/strings.xml +++ b/omnipod-dash/src/main/res/values-sk-rSK/strings.xml @@ -4,6 +4,18 @@ Integrácia pumpy pre Omnipod Dash (nový model s funkciou Bluetooth a modrým krytom). + Stav Bluetooth + Adresa Bluetooth + Firmware %1$s / Bluetooth %2$s + Kvalita pripojenia + Stav doručenia + Naplňte nový Pod dostatkom inzulínu na 3 dni.\n\nČakajte na dve pípnutia z Podu v priebehu procesu plnenia. Tieto indikujú, že minimálne množstvo 85U bolo naplnené. Uistite sa, že striekačka je úplne vyprázdnená a to aj po vypočutí dvoch pípnutí.\n\nPo naplnení Podu, prosím, stlačte Ďalšia.\n\nPoznámka: zatiaľ nesnímajte kryt z ihly Podu. + Systém sa snaží spárovať s novým Podom a naplniť ho.\n\nAkonáhle bude inicializační proces úspešne dokončený, môžete stlačiť tlačítko Ďalšia. + Zvuk oznámenia pri pozastavenom podávaní povolený + Nepodarilo sa pripojiť k Podu + Našlo sa príliš veľa Podov na aktiváciu + Nemôžem nájsť dostupný Pod na aktiváciu + Všeobecná chyba: %1$s diff --git a/openhumans/src/main/res/values-sk-rSK/strings.xml b/openhumans/src/main/res/values-sk-rSK/strings.xml index e65cd681d7..46eee7e8e7 100644 --- a/openhumans/src/main/res/values-sk-rSK/strings.xml +++ b/openhumans/src/main/res/values-sk-rSK/strings.xml @@ -2,9 +2,18 @@ Open Humans OH + Open Humans vám umožňuje nahrávať dáta vášho diabetu a darovať ich vedeckým projektom. Odhlásiť + Nastaviť + Open Humans bol nastavený. Pokiaľ chcete prestať nahrávať, kliknite na \"Odhlásiť\". + Open Humans je momentálne neaktívny. Ak chcete začať nahrávať dáta, kliknite na tlačítko \"Nastaviť\". + ID člena projektu: %1$s Odoslať iba ak ste pripojený k Wi-Fi Odoslať iba pri nabíjaní + Nahrávanie na Open Humans… + Notifikácie Open Humans + AndroidAPS nahráva na Open Humans. To môže chvíľu trvať. Boli ste odhlásený z Open Humans Kliknite sem, ak sa chcete prihlásiť znova, v prípade, že sa to stalo nedopatrením. + Nahrať teraz From f802cc488edcedb5d7539ad3c51ab7cd65674e9a Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Mon, 4 Oct 2021 17:35:17 +0200 Subject: [PATCH 4/4] Pump status line refactor --- .../plugins/general/overview/OverviewData.kt | 10 +- .../general/overview/OverviewFragment.kt | 76 +- .../general/overview/OverviewPlugin.kt | 14 +- .../androidaps/queue/QueueThread.kt | 1 + app/src/main/res/layout/actions_fragment.xml | 2 +- .../res/layout/actions_fragment_lowres.xml | 2 +- app/src/main/res/layout/overview_fragment.xml | 64 +- .../overview_loop_pumpstatus_layout.xml | 67 - .../events/EventPumpStatusChanged.kt | 14 +- ...c_danarhistory.xml => ic_pump_history.xml} | 0 core/src/main/res/values/colors.xml | 2 +- core/src/main/res/values/strings.xml | 3 + .../androidaps/dana/DanaFragment.kt | 56 +- dana/src/main/res/layout/danar_fragment.xml | 1413 ++++++++--------- .../res/layout/danar_history_activity.xml | 2 +- dana/src/main/res/values/strings.xml | 3 +- .../danars/services/DanaRSService.kt | 1 + .../androidaps/diaconn/DiaconnG8Fragment.kt | 7 +- .../main/res/layout/diaconn_g8_fragment.xml | 3 +- .../layout/diaconn_g8_history_activity.xml | 2 +- .../pump/medtronic/MedtronicFragment.kt | 2 - .../main/res/layout/medtronic_fragment.xml | 3 +- 22 files changed, 848 insertions(+), 899 deletions(-) delete mode 100644 app/src/main/res/layout/overview_loop_pumpstatus_layout.xml rename core/src/main/res/drawable/{ic_danarhistory.xml => ic_pump_history.xml} (100%) diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewData.kt b/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewData.kt index 2a0b523200..2cdd860ce3 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewData.kt +++ b/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewData.kt @@ -63,7 +63,8 @@ class OverviewData @Inject constructor( BG, IOB_COB, SENSITIVITY, - GRAPH + GRAPH, + PUMPSTATUS } var rangeToDisplay = 6 // for graph @@ -72,6 +73,7 @@ class OverviewData @Inject constructor( var endTime: Long = 0 fun reset() { + pumpStatus = "" calcProgress = "" lastBg = null temporaryBasal = null @@ -122,6 +124,12 @@ class OverviewData @Inject constructor( endTime = toTime } + /* + * PUMP STATUS + */ + + var pumpStatus: String = "" + /* * CALC PROGRESS */ diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewFragment.kt b/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewFragment.kt index e02b359db6..e38310b1ba 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewFragment.kt +++ b/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewFragment.kt @@ -61,7 +61,11 @@ import info.nightscout.androidaps.plugins.source.DexcomPlugin import info.nightscout.androidaps.plugins.source.XdripPlugin import info.nightscout.androidaps.queue.CommandQueue import info.nightscout.androidaps.skins.SkinProvider -import info.nightscout.androidaps.utils.* +import info.nightscout.androidaps.utils.DateUtil +import info.nightscout.androidaps.utils.DefaultValueHelper +import info.nightscout.androidaps.utils.FabricPrivacy +import info.nightscout.androidaps.utils.ToastUtils +import info.nightscout.androidaps.utils.TrendCalculator import info.nightscout.androidaps.utils.alertDialogs.OKDialog import info.nightscout.androidaps.utils.buildHelper.BuildHelper import info.nightscout.androidaps.utils.protection.ProtectionCheck @@ -73,6 +77,7 @@ import info.nightscout.androidaps.utils.wizard.QuickWizard import io.reactivex.disposables.CompositeDisposable import io.reactivex.rxkotlin.plusAssign import java.util.* +import java.util.concurrent.TimeUnit import javax.inject.Inject import kotlin.collections.ArrayList import kotlin.math.abs @@ -159,8 +164,6 @@ class OverviewFragment : DaggerFragment(), View.OnClickListener, OnLongClickList skinProvider.activeSkin().preProcessLandscapeOverviewLayout(dm, view, landscape, resourceHelper.gb(R.bool.isTablet), smallHeight) binding.nsclientLayout.visibility = config.NSCLIENT.toVisibility() - binding.loopPumpStatusLayout.pumpStatus.setBackgroundColor(resourceHelper.gc(R.color.colorInitializingBorder)) - binding.notifications.setHasFixedSize(false) binding.notifications.layoutManager = LinearLayoutManager(view.context) axisWidth = if (dm.densityDpi <= 120) 3 else if (dm.densityDpi <= 160) 10 else if (dm.densityDpi <= 320) 35 else if (dm.densityDpi <= 420) 50 else if (dm.densityDpi <= 560) 70 else 80 @@ -189,10 +192,10 @@ class OverviewFragment : DaggerFragment(), View.OnClickListener, OnLongClickList prepareGraphsIfNeeded(overviewMenus.setting.size) overviewMenus.setupChartMenu(binding.graphsLayout.chartMenuButton) - binding.loopPumpStatusLayout.activeProfile.setOnClickListener(this) - binding.loopPumpStatusLayout.activeProfile.setOnLongClickListener(this) - binding.loopPumpStatusLayout.tempTarget.setOnClickListener(this) - binding.loopPumpStatusLayout.tempTarget.setOnLongClickListener(this) + binding.activeProfile.setOnClickListener(this) + binding.activeProfile.setOnLongClickListener(this) + binding.tempTarget.setOnClickListener(this) + binding.tempTarget.setOnLongClickListener(this) binding.buttonsLayout.acceptTempButton.setOnClickListener(this) binding.buttonsLayout.treatmentButton.setOnClickListener(this) binding.buttonsLayout.wizardButton.setOnClickListener(this) @@ -204,7 +207,7 @@ class OverviewFragment : DaggerFragment(), View.OnClickListener, OnLongClickList binding.buttonsLayout.quickWizardButton.setOnLongClickListener(this) binding.infoLayout.apsMode.setOnClickListener(this) binding.infoLayout.apsMode.setOnLongClickListener(this) - binding.loopPumpStatusLayout.activeProfile.setOnLongClickListener(this) + binding.activeProfile.setOnLongClickListener(this) } @Synchronized @@ -245,10 +248,14 @@ class OverviewFragment : DaggerFragment(), View.OnClickListener, OnLongClickList .toObservable(EventNewOpenLoopNotification::class.java) .observeOn(aapsSchedulers.io) .subscribe({ scheduleUpdateGUI("EventNewOpenLoopNotification") }, fabricPrivacy::logException)) - disposable.add(rxBus + disposable += rxBus .toObservable(EventPumpStatusChanged::class.java) .observeOn(aapsSchedulers.main) - .subscribe({ updatePumpStatus(it) }, fabricPrivacy::logException)) + .delay (30, TimeUnit.MILLISECONDS, aapsSchedulers.main) + .subscribe({ + overviewData.pumpStatus = it.getStatus(resourceHelper) + updateGUI("EventPumpStatusChanged", OverviewData.Property.PUMPSTATUS) + }, fabricPrivacy::logException) refreshLoop = Runnable { overviewPlugin.refreshLoop("refreshLoop") @@ -406,18 +413,6 @@ class OverviewFragment : DaggerFragment(), View.OnClickListener, OnLongClickList } } - private fun updatePumpStatus(event: EventPumpStatusChanged) { - val status = event.getStatus(resourceHelper) - if (status != "") { - binding.loopPumpStatusLayout.pumpStatus.text = status - binding.loopPumpStatusLayout.pumpStatusLayout.visibility = View.VISIBLE - binding.loopPumpStatusLayout.loopLayout.visibility = View.GONE - } else { - binding.loopPumpStatusLayout.pumpStatusLayout.visibility = View.GONE - binding.loopPumpStatusLayout.loopLayout.visibility = View.VISIBLE - } - } - @SuppressLint("SetTextI18n") private fun processButtonsVisibility() { val lastBG = iobCobCalculator.ads.lastBg() @@ -600,14 +595,11 @@ class OverviewFragment : DaggerFragment(), View.OnClickListener, OnLongClickList // if (what != OverviewData.Property.CALC_PROGRESS) // aapsLogger.debug(LTag.UI, "UpdateGui $from $what") if (profileFunction.getProfile() == null) { - binding.loopPumpStatusLayout.pumpStatus.setText(R.string.noprofileset) - binding.loopPumpStatusLayout.pumpStatusLayout.visibility = View.VISIBLE - binding.loopPumpStatusLayout.loopLayout.visibility = View.GONE + binding.activeProfile.setText(R.string.noprofileset) + binding.activeProfile.setBackgroundColor(resourceHelper.gc(R.color.errorAlertBackground)) return } binding.notifications.let { notificationStore.updateNotifications(it) } - binding.loopPumpStatusLayout.pumpStatusLayout.visibility = View.GONE - binding.loopPumpStatusLayout.loopLayout.visibility = View.VISIBLE val units = profileFunction.getUnits() val pump = activePlugin.activePump @@ -658,9 +650,9 @@ class OverviewFragment : DaggerFragment(), View.OnClickListener, OnLongClickList else resourceHelper.gc(R.color.ribbonTextDefault) } ?: resourceHelper.gc(R.color.ribbonTextDefault) - binding.loopPumpStatusLayout.activeProfile.text = profileFunction.getProfileNameWithRemainingTime() - binding.loopPumpStatusLayout.activeProfile.setBackgroundColor(profileBackgroundColor) - binding.loopPumpStatusLayout.activeProfile.setTextColor(profileTextColor) + binding.activeProfile.text = profileFunction.getProfileNameWithRemainingTime() + binding.activeProfile.setBackgroundColor(profileBackgroundColor) + binding.activeProfile.setTextColor(profileTextColor) } OverviewData.Property.TEMPORARY_BASAL -> { @@ -721,9 +713,9 @@ class OverviewFragment : DaggerFragment(), View.OnClickListener, OnLongClickList if (overviewData.temporaryTarget?.isInProgress(dateUtil) == false) overviewData.temporaryTarget = null val tempTarget = overviewData.temporaryTarget if (tempTarget != null) { - binding.loopPumpStatusLayout.tempTarget.setTextColor(resourceHelper.gc(R.color.ribbonTextWarning)) - binding.loopPumpStatusLayout.tempTarget.setBackgroundColor(resourceHelper.gc(R.color.ribbonWarning)) - binding.loopPumpStatusLayout.tempTarget.text = Profile.toTargetRangeString(tempTarget.lowTarget, tempTarget.highTarget, GlucoseUnit.MGDL, units) + " " + dateUtil.untilString(tempTarget.end, resourceHelper) + binding.tempTarget.setTextColor(resourceHelper.gc(R.color.ribbonTextWarning)) + binding.tempTarget.setBackgroundColor(resourceHelper.gc(R.color.ribbonWarning)) + binding.tempTarget.text = Profile.toTargetRangeString(tempTarget.lowTarget, tempTarget.highTarget, GlucoseUnit.MGDL, units) + " " + dateUtil.untilString(tempTarget.end, resourceHelper) } else { // If the target is not the same as set in the profile then oref has overridden it profileFunction.getProfile()?.let { profile -> @@ -731,13 +723,13 @@ class OverviewFragment : DaggerFragment(), View.OnClickListener, OnLongClickList if (targetUsed != 0.0 && abs(profile.getTargetMgdl() - targetUsed) > 0.01) { aapsLogger.debug("Adjusted target. Profile: ${profile.getTargetMgdl()} APS: $targetUsed") - binding.loopPumpStatusLayout.tempTarget.text = Profile.toTargetRangeString(targetUsed, targetUsed, GlucoseUnit.MGDL, units) - binding.loopPumpStatusLayout.tempTarget.setTextColor(resourceHelper.gc(R.color.ribbonTextWarning)) - binding.loopPumpStatusLayout.tempTarget.setBackgroundColor(resourceHelper.gc(R.color.tempTargetBackground)) + binding.tempTarget.text = Profile.toTargetRangeString(targetUsed, targetUsed, GlucoseUnit.MGDL, units) + binding.tempTarget.setTextColor(resourceHelper.gc(R.color.ribbonTextWarning)) + binding.tempTarget.setBackgroundColor(resourceHelper.gc(R.color.tempTargetBackground)) } else { - binding.loopPumpStatusLayout.tempTarget.setTextColor(resourceHelper.gc(R.color.ribbonTextDefault)) - binding.loopPumpStatusLayout.tempTarget.setBackgroundColor(resourceHelper.gc(R.color.ribbonDefault)) - binding.loopPumpStatusLayout.tempTarget.text = Profile.toTargetRangeString(profile.getTargetLowMgdl(), profile.getTargetHighMgdl(), GlucoseUnit.MGDL, units) + binding.tempTarget.setTextColor(resourceHelper.gc(R.color.ribbonTextDefault)) + binding.tempTarget.setBackgroundColor(resourceHelper.gc(R.color.ribbonDefault)) + binding.tempTarget.text = Profile.toTargetRangeString(profile.getTargetLowMgdl(), profile.getTargetHighMgdl(), GlucoseUnit.MGDL, units) } } } @@ -832,6 +824,12 @@ class OverviewFragment : DaggerFragment(), View.OnClickListener, OnLongClickList String.format(Locale.ENGLISH, "%.0f%%", autosensData.autosensResult.ratio * 100) } ?: "" } + + OverviewData.Property.PUMPSTATUS -> { + val status = overviewData.pumpStatus + binding.pumpStatus.text = status + binding.pumpStatusLayout.visibility = (status != "").toVisibility() + } } } } diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewPlugin.kt b/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewPlugin.kt index c5c0c35757..24433dfadc 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewPlugin.kt +++ b/app/src/main/java/info/nightscout/androidaps/plugins/general/overview/OverviewPlugin.kt @@ -135,16 +135,22 @@ class OverviewPlugin @Inject constructor( .toObservable(EventLoopInvoked::class.java) .observeOn(aapsSchedulers.io) .subscribe({ overviewData.preparePredictions("EventLoopInvoked") }, fabricPrivacy::logException) - disposable.add(rxBus + disposable += rxBus .toObservable(EventNewBasalProfile::class.java) .observeOn(aapsSchedulers.io) - .subscribe({ loadProfile("EventNewBasalProfile") }, fabricPrivacy::logException)) - disposable.add(rxBus + .subscribe({ loadProfile("EventNewBasalProfile") }, fabricPrivacy::logException) + disposable += rxBus .toObservable(EventAutosensCalculationFinished::class.java) .observeOn(aapsSchedulers.io) .subscribe({ if (it.cause !is EventCustomCalculationFinished) refreshLoop("EventAutosensCalculationFinished") - }, fabricPrivacy::logException)) + }, fabricPrivacy::logException) + disposable += rxBus + .toObservable(EventPumpStatusChanged::class.java) + .observeOn(aapsSchedulers.io) + .subscribe({ + overviewData.pumpStatus = it.getStatus(resourceHelper) + }, fabricPrivacy::logException) Thread { loadAll("onResume") }.start() } diff --git a/app/src/main/java/info/nightscout/androidaps/queue/QueueThread.kt b/app/src/main/java/info/nightscout/androidaps/queue/QueueThread.kt index 34b64b8501..6de611c276 100644 --- a/app/src/main/java/info/nightscout/androidaps/queue/QueueThread.kt +++ b/app/src/main/java/info/nightscout/androidaps/queue/QueueThread.kt @@ -135,6 +135,7 @@ class QueueThread internal constructor( aapsLogger.debug(LTag.PUMPQUEUE, "disconnected") return } else { + rxBus.send(EventPumpStatusChanged(EventPumpStatusChanged.Status.WAITING_FOR_DISCONNECTION)) aapsLogger.debug(LTag.PUMPQUEUE, "waiting for disconnect") SystemClock.sleep(1000) } diff --git a/app/src/main/res/layout/actions_fragment.xml b/app/src/main/res/layout/actions_fragment.xml index 98e3976d97..7d43edb857 100644 --- a/app/src/main/res/layout/actions_fragment.xml +++ b/app/src/main/res/layout/actions_fragment.xml @@ -273,7 +273,7 @@ style="@style/ButtonSmallFontStyle" android:layout_width="0dp" android:layout_height="wrap_content" - android:drawableTop="@drawable/ic_danarhistory" + android:drawableTop="@drawable/ic_pump_history" android:paddingLeft="0dp" android:paddingRight="0dp" android:text="@string/nav_historybrowser" diff --git a/app/src/main/res/layout/actions_fragment_lowres.xml b/app/src/main/res/layout/actions_fragment_lowres.xml index bf90751f8d..689277d9d7 100644 --- a/app/src/main/res/layout/actions_fragment_lowres.xml +++ b/app/src/main/res/layout/actions_fragment_lowres.xml @@ -273,7 +273,7 @@ style="@style/ButtonSmallFontStyle" android:layout_width="0dp" android:layout_height="wrap_content" - android:drawableTop="@drawable/ic_danarhistory" + android:drawableTop="@drawable/ic_pump_history" android:paddingLeft="0dp" android:paddingRight="0dp" android:text="@string/nav_historybrowser" diff --git a/app/src/main/res/layout/overview_fragment.xml b/app/src/main/res/layout/overview_fragment.xml index 149fa2c9ce..f37998f4e3 100644 --- a/app/src/main/res/layout/overview_fragment.xml +++ b/app/src/main/res/layout/overview_fragment.xml @@ -10,8 +10,7 @@ android:id="@+id/top_part_scrollbar" android:layout_width="wrap_content" android:layout_height="0dp" - android:layout_weight="1" - tools:ignore="UselessParent"> + android:layout_weight="1"> - + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/overview_loop_pumpstatus_layout.xml b/app/src/main/res/layout/overview_loop_pumpstatus_layout.xml deleted file mode 100644 index 0a6288d429..0000000000 --- a/app/src/main/res/layout/overview_loop_pumpstatus_layout.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/src/main/java/info/nightscout/androidaps/events/EventPumpStatusChanged.kt b/core/src/main/java/info/nightscout/androidaps/events/EventPumpStatusChanged.kt index 0b9ce7ebf0..e65a7fe6e5 100644 --- a/core/src/main/java/info/nightscout/androidaps/events/EventPumpStatusChanged.kt +++ b/core/src/main/java/info/nightscout/androidaps/events/EventPumpStatusChanged.kt @@ -10,6 +10,7 @@ class EventPumpStatusChanged : EventStatus { CONNECTED, HANDSHAKING, PERFORMING, + WAITING_FOR_DISCONNECTION, DISCONNECTING, DISCONNECTED } @@ -46,12 +47,13 @@ class EventPumpStatusChanged : EventStatus { // status for startup wizard override fun getStatus(resourceHelper: ResourceHelper): String { return when (status) { - Status.CONNECTING -> String.format(resourceHelper.gs(R.string.connectingfor), secondsElapsed) - Status.HANDSHAKING -> resourceHelper.gs(R.string.handshaking) - Status.CONNECTED -> resourceHelper.gs(R.string.connected) - Status.PERFORMING -> performingAction - Status.DISCONNECTING -> resourceHelper.gs(R.string.disconnecting) - Status.DISCONNECTED -> "" + Status.CONNECTING -> String.format(resourceHelper.gs(R.string.connectingfor), secondsElapsed) + Status.HANDSHAKING -> resourceHelper.gs(R.string.handshaking) + Status.CONNECTED -> resourceHelper.gs(R.string.connected) + Status.PERFORMING -> performingAction + Status.WAITING_FOR_DISCONNECTION -> resourceHelper.gs(R.string.waiting_for_disconnection) + Status.DISCONNECTING -> resourceHelper.gs(R.string.disconnecting) + Status.DISCONNECTED -> "" } } } diff --git a/core/src/main/res/drawable/ic_danarhistory.xml b/core/src/main/res/drawable/ic_pump_history.xml similarity index 100% rename from core/src/main/res/drawable/ic_danarhistory.xml rename to core/src/main/res/drawable/ic_pump_history.xml diff --git a/core/src/main/res/values/colors.xml b/core/src/main/res/values/colors.xml index 694164b776..ead398c2a6 100644 --- a/core/src/main/res/values/colors.xml +++ b/core/src/main/res/values/colors.xml @@ -12,7 +12,7 @@ #66000000 - #00695c + #505050 #303030 diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index b2bd4ac0b6..512cfec8eb 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -81,6 +81,7 @@ Connected Disconnected Disconnecting + Waiting for disconnection AndroidAPS started %1$.1f U %1$.2f U @@ -289,6 +290,8 @@ Loop NS Record + Reading pump history + Pump icon Connection timed out diff --git a/dana/src/main/java/info/nightscout/androidaps/dana/DanaFragment.kt b/dana/src/main/java/info/nightscout/androidaps/dana/DanaFragment.kt index ca509d3caf..d8b660e9d6 100644 --- a/dana/src/main/java/info/nightscout/androidaps/dana/DanaFragment.kt +++ b/dana/src/main/java/info/nightscout/androidaps/dana/DanaFragment.kt @@ -64,6 +64,8 @@ class DanaFragment : DaggerFragment() { private val loopHandler = Handler(Looper.getMainLooper()) private lateinit var refreshLoop: Runnable + private var pumpStatus = "" + private var pumpStatusIcon = "{fa-bluetooth-b}" private var _binding: DanarFragmentBinding? = null @@ -87,10 +89,8 @@ class DanaFragment : DaggerFragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) - binding.danaPumpstatus.setBackgroundColor(resourceHelper.gc(R.color.colorInitializingBorder)) - binding.history.setOnClickListener { startActivity(Intent(context, DanaHistoryActivity::class.java)) } - binding.viewprofile.setOnClickListener { + binding.viewProfile.setOnClickListener { val profile = danaPump.createConvertedProfile()?.getDefaultProfileJson() ?: return@setOnClickListener val profileName = danaPump.createConvertedProfile()?.getDefaultProfileName() @@ -152,31 +152,25 @@ class DanaFragment : DaggerFragment() { .toObservable(EventPumpStatusChanged::class.java) .observeOn(aapsSchedulers.main) .subscribe({ - when (it.status) { + pumpStatusIcon = when (it.status) { EventPumpStatusChanged.Status.CONNECTING -> - @Suppress("SetTextI18n") - binding.btconnection.text = "{fa-bluetooth-b spin} ${it.secondsElapsed}s" + "{fa-bluetooth-b spin} ${it.secondsElapsed}s" EventPumpStatusChanged.Status.CONNECTED -> - @Suppress("SetTextI18n") - binding.btconnection.text = "{fa-bluetooth}" + "{fa-bluetooth}" EventPumpStatusChanged.Status.DISCONNECTED -> - @Suppress("SetTextI18n") - binding.btconnection.text = "{fa-bluetooth-b}" + "{fa-bluetooth-b}" - else -> { - } - } - if (it.getStatus(resourceHelper) != "") { - binding.danaPumpstatus.text = it.getStatus(resourceHelper) - binding.danaPumpstatuslayout.visibility = View.VISIBLE - } else { - binding.danaPumpstatuslayout.visibility = View.GONE + else -> + "{fa-bluetooth-b}" } + binding.btconnection.text = pumpStatusIcon + pumpStatus = it.getStatus(resourceHelper) + binding.pumpStatus.text = pumpStatus + binding.pumpStatusLayout.visibility = (pumpStatus != "").toVisibility() }, fabricPrivacy::logException) - binding.danaPumpstatus.text = "" - binding.danaPumpstatuslayout.visibility = View.GONE - @Suppress("SetTextI18n") - binding.btconnection.text = "{fa-bluetooth-b}" + + pumpStatus = "" + pumpStatusIcon = "{fa-bluetooth-b}" updateGUI() } @@ -185,6 +179,8 @@ class DanaFragment : DaggerFragment() { super.onPause() disposable.clear() loopHandler.removeCallbacks(refreshLoop) + pumpStatus = "" + pumpStatusIcon = "{fa-bluetooth-b}" } @Synchronized @@ -197,6 +193,11 @@ class DanaFragment : DaggerFragment() { @Synchronized fun updateGUI() { if (_binding == null) return + binding.btconnection.text = pumpStatusIcon + binding.pumpStatus.text = pumpStatus + binding.pumpStatusLayout.visibility = (pumpStatus != "").toVisibility() + binding.queue.text = commandQueue.spannedStatus() + binding.queueStatusLayout.visibility = (commandQueue.spannedStatus().toString() != "").toVisibility() val pump = danaPump val plugin: Pump = activePlugin.activePump if (pump.lastConnection != 0L) { @@ -225,18 +226,9 @@ class DanaFragment : DaggerFragment() { warnColors.setColorInverse(binding.reservoir, pump.reservoirRemainingUnits, 50.0, 20.0) binding.battery.text = "{fa-battery-" + pump.batteryRemaining / 25 + "}" warnColors.setColorInverse(binding.battery, pump.batteryRemaining.toDouble(), 51.0, 26.0) - binding.iob.text = resourceHelper.gs(R.string.formatinsulinunits, pump.iob) binding.firmware.text = resourceHelper.gs(R.string.dana_model, pump.modelFriendlyName(), pump.hwModel, pump.protocol, pump.productCode) - binding.basalstep.text = pump.basalStep.toString() - binding.bolusstep.text = pump.bolusStep.toString() + binding.basalBolusStep.text = pump.basalStep.toString() + "/" + pump.bolusStep.toString() binding.serialNumber.text = pump.serialNumber - val status = commandQueue.spannedStatus() - if (status.toString() == "") { - binding.queue.visibility = View.GONE - } else { - binding.queue.visibility = View.VISIBLE - binding.queue.text = status - } val icon = if (danaPump.pumpType() == PumpType.DANA_I) R.drawable.ic_dana_i else R.drawable.ic_dana_rs binding.danaIcon.setImageDrawable(context?.let { ContextCompat.getDrawable(it, icon) }) //hide user options button if not an RS pump or old firmware diff --git a/dana/src/main/res/layout/danar_fragment.xml b/dana/src/main/res/layout/danar_fragment.xml index 7fa180c672..eeb1a1f853 100644 --- a/dana/src/main/res/layout/danar_fragment.xml +++ b/dana/src/main/res/layout/danar_fragment.xml @@ -1,704 +1,20 @@ - + tools:context="info.nightscout.androidaps.dana.DanaFragment" + android:orientation="vertical"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + android:layout_height="0dp" + android:paddingTop="5dp" + android:layout_weight="1"> -