diff --git a/.circleci/config.yml b/.circleci/config.yml
index f9479bd008..73803ea12f 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -23,7 +23,7 @@ jobs:
test-command: ./gradlew testFullDebugUnitTest
- android/run-tests:
- test-command: ./gradlew jacocoAllDebugReport
+ test-command: ./gradlew --stacktrace jacocoAllDebugReport
# Then start the emulator and run the Instrumentation tests!
# - android/start-emulator-and-run-tests:
diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
index c76f23799b..f9209c97b3 100644
--- a/.idea/codeStyles/Project.xml
+++ b/.idea/codeStyles/Project.xml
@@ -3,12 +3,7 @@
-
-
-
diff --git a/.run/Run all tests.run.xml b/.run/Run all tests.run.xml
new file mode 100644
index 0000000000..16e5767ada
--- /dev/null
+++ b/.run/Run all tests.run.xml
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+ false
+ true
+ false
+
+
+
\ No newline at end of file
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index ca2f66f536..2723505db5 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,6 +1,6 @@
This document speciffy hints and good practices for source code contributions.
-AndroidAPS is community effort and all contributions are welcome! If you wish help us improving AndroidAPS - please read and try to adhere to
+AndroidAPS is community effort and all contributions are welcome! If you wish help us improving AAPS - please read and try to adhere to
this guidelines, to make the development and process of change aproval as smooth as possible :)
General rules
@@ -19,7 +19,7 @@ Coding convetions
1. Use Android Studio with default indents (4 chars, use spaces)
2. Use autoformat feature CTRL-ALT-L in every changed file before commit
-Commiting Changes / Pull Requests
+Committing Changes / Pull Requests
---------------------------------
1. Make fork of repository on github
diff --git a/README.md b/README.md
index a656d723e1..c319d72528 100644
--- a/README.md
+++ b/README.md
@@ -1,12 +1,12 @@
-# AndroidAPS
-* Check the wiki: https://androidaps.readthedocs.io
-* Everyone who’s been looping with AndroidAPS needs to fill out the form after 3 days of looping https://docs.google.com/forms/d/14KcMjlINPMJHVt28MDRupa4sz4DDIooI4SrW0P3HSN8/viewform?c=0&w=1
+# AAPS
+* Check the wiki: https://wiki.aaps.app
+* Everyone who’s been looping with AAPS needs to fill out the form after 3 days of looping https://docs.google.com/forms/d/14KcMjlINPMJHVt28MDRupa4sz4DDIooI4SrW0P3HSN8/viewform?c=0&w=1
[![Support Server](https://img.shields.io/discord/629952586895851530.svg?label=Discord&logo=Discord&colorB=7289da&style=for-the-badge)](https://discord.gg/4fQUWHZ4Mw)
[![CircleCI](https://circleci.com/gh/nightscout/AndroidAPS/tree/master.svg?style=svg)](https://circleci.com/gh/nightscout/AndroidAPS/tree/master)
-[![Crowdin](https://d322cqt584bo4o.cloudfront.net/androidaps/localized.svg)](https://translations.androidaps.org/project/androidaps)
-[![Documentation Status](https://readthedocs.org/projects/androidaps/badge/?version=latest)](https://androidaps.readthedocs.io/en/latest/?badge=latest)
+[![Crowdin](https://d322cqt584bo4o.cloudfront.net/androidaps/localized.svg)](https://translations.aaps.app/project/androidaps)
+[![Documentation Status](https://readthedocs.org/projects/androidaps/badge/?version=latest)](https://wiki.aaps.app/en/latest/?badge=latest)
[![codecov](https://codecov.io/gh/nightscout/AndroidAPS/branch/master/graph/badge.svg)](https://codecov.io/gh/MilosKozak/AndroidAPS)
DEV:
diff --git a/Steampunk_graphics_source_link.md b/_docs/Steampunk_graphics_source_link.md
similarity index 100%
rename from Steampunk_graphics_source_link.md
rename to _docs/Steampunk_graphics_source_link.md
diff --git a/demo_keystore.jks b/_docs/demo_keystore.jks
similarity index 100%
rename from demo_keystore.jks
rename to _docs/demo_keystore.jks
diff --git a/gource/sample.bat b/_docs/gource/sample.bat
similarity index 100%
rename from gource/sample.bat
rename to _docs/gource/sample.bat
diff --git a/icons/action_add.svg b/_docs/icons/action_add.svg
similarity index 100%
rename from icons/action_add.svg
rename to _docs/icons/action_add.svg
diff --git a/icons/action_minus.svg b/_docs/icons/action_minus.svg
similarity index 100%
rename from icons/action_minus.svg
rename to _docs/icons/action_minus.svg
diff --git a/icons/actions_cancelextbolus.svg b/_docs/icons/actions_cancelextbolus.svg
similarity index 100%
rename from icons/actions_cancelextbolus.svg
rename to _docs/icons/actions_cancelextbolus.svg
diff --git a/icons/actions_refill.svg b/_docs/icons/actions_refill.svg
similarity index 100%
rename from icons/actions_refill.svg
rename to _docs/icons/actions_refill.svg
diff --git a/icons/actions_startextbolus.svg b/_docs/icons/actions_startextbolus.svg
similarity index 100%
rename from icons/actions_startextbolus.svg
rename to _docs/icons/actions_startextbolus.svg
diff --git a/icons/actions_temptarget.svg b/_docs/icons/actions_temptarget.svg
similarity index 100%
rename from icons/actions_temptarget.svg
rename to _docs/icons/actions_temptarget.svg
diff --git a/icons/add.svg b/_docs/icons/add.svg
similarity index 100%
rename from icons/add.svg
rename to _docs/icons/add.svg
diff --git a/icons/as.svg b/_docs/icons/as.svg
similarity index 100%
rename from icons/as.svg
rename to _docs/icons/as.svg
diff --git a/icons/auto_delta.svg b/_docs/icons/auto_delta.svg
similarity index 100%
rename from icons/auto_delta.svg
rename to _docs/icons/auto_delta.svg
diff --git a/icons/autotune.svg b/_docs/icons/autotune.svg
similarity index 100%
rename from icons/autotune.svg
rename to _docs/icons/autotune.svg
diff --git a/icons/battery-burnin/battery-charging-wireless-10-burnin.svg b/_docs/icons/battery-burnin/battery-charging-wireless-10-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-charging-wireless-10-burnin.svg
rename to _docs/icons/battery-burnin/battery-charging-wireless-10-burnin.svg
diff --git a/icons/battery-burnin/battery-charging-wireless-20-burnin.svg b/_docs/icons/battery-burnin/battery-charging-wireless-20-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-charging-wireless-20-burnin.svg
rename to _docs/icons/battery-burnin/battery-charging-wireless-20-burnin.svg
diff --git a/icons/battery-burnin/battery-charging-wireless-30-burnin.svg b/_docs/icons/battery-burnin/battery-charging-wireless-30-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-charging-wireless-30-burnin.svg
rename to _docs/icons/battery-burnin/battery-charging-wireless-30-burnin.svg
diff --git a/icons/battery-burnin/battery-charging-wireless-40-burnin.svg b/_docs/icons/battery-burnin/battery-charging-wireless-40-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-charging-wireless-40-burnin.svg
rename to _docs/icons/battery-burnin/battery-charging-wireless-40-burnin.svg
diff --git a/icons/battery-burnin/battery-charging-wireless-50-burnin.svg b/_docs/icons/battery-burnin/battery-charging-wireless-50-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-charging-wireless-50-burnin.svg
rename to _docs/icons/battery-burnin/battery-charging-wireless-50-burnin.svg
diff --git a/icons/battery-burnin/battery-charging-wireless-60-burnin.svg b/_docs/icons/battery-burnin/battery-charging-wireless-60-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-charging-wireless-60-burnin.svg
rename to _docs/icons/battery-burnin/battery-charging-wireless-60-burnin.svg
diff --git a/icons/battery-burnin/battery-charging-wireless-70-burnin.svg b/_docs/icons/battery-burnin/battery-charging-wireless-70-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-charging-wireless-70-burnin.svg
rename to _docs/icons/battery-burnin/battery-charging-wireless-70-burnin.svg
diff --git a/icons/battery-burnin/battery-charging-wireless-80-burnin.svg b/_docs/icons/battery-burnin/battery-charging-wireless-80-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-charging-wireless-80-burnin.svg
rename to _docs/icons/battery-burnin/battery-charging-wireless-80-burnin.svg
diff --git a/icons/battery-burnin/battery-charging-wireless-90-burnin.svg b/_docs/icons/battery-burnin/battery-charging-wireless-90-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-charging-wireless-90-burnin.svg
rename to _docs/icons/battery-burnin/battery-charging-wireless-90-burnin.svg
diff --git a/icons/battery-burnin/battery-charging-wireless-burnin.svg b/_docs/icons/battery-burnin/battery-charging-wireless-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-charging-wireless-burnin.svg
rename to _docs/icons/battery-burnin/battery-charging-wireless-burnin.svg
diff --git a/icons/battery-burnin/battery-unknown-burnin.svg b/_docs/icons/battery-burnin/battery-unknown-burnin.svg
similarity index 100%
rename from icons/battery-burnin/battery-unknown-burnin.svg
rename to _docs/icons/battery-burnin/battery-unknown-burnin.svg
diff --git a/icons/battery-source/mask-burnin-battery-raw.svg b/_docs/icons/battery-source/mask-burnin-battery-raw.svg
similarity index 100%
rename from icons/battery-source/mask-burnin-battery-raw.svg
rename to _docs/icons/battery-source/mask-burnin-battery-raw.svg
diff --git a/icons/battery-source/mask-burnin-battery.svg b/_docs/icons/battery-source/mask-burnin-battery.svg
similarity index 100%
rename from icons/battery-source/mask-burnin-battery.svg
rename to _docs/icons/battery-source/mask-burnin-battery.svg
diff --git a/icons/battery/battery-charging-wireless-10.svg b/_docs/icons/battery/battery-charging-wireless-10.svg
similarity index 100%
rename from icons/battery/battery-charging-wireless-10.svg
rename to _docs/icons/battery/battery-charging-wireless-10.svg
diff --git a/icons/battery/battery-charging-wireless-20.svg b/_docs/icons/battery/battery-charging-wireless-20.svg
similarity index 100%
rename from icons/battery/battery-charging-wireless-20.svg
rename to _docs/icons/battery/battery-charging-wireless-20.svg
diff --git a/icons/battery/battery-charging-wireless-30.svg b/_docs/icons/battery/battery-charging-wireless-30.svg
similarity index 100%
rename from icons/battery/battery-charging-wireless-30.svg
rename to _docs/icons/battery/battery-charging-wireless-30.svg
diff --git a/icons/battery/battery-charging-wireless-40.svg b/_docs/icons/battery/battery-charging-wireless-40.svg
similarity index 100%
rename from icons/battery/battery-charging-wireless-40.svg
rename to _docs/icons/battery/battery-charging-wireless-40.svg
diff --git a/icons/battery/battery-charging-wireless-50.svg b/_docs/icons/battery/battery-charging-wireless-50.svg
similarity index 100%
rename from icons/battery/battery-charging-wireless-50.svg
rename to _docs/icons/battery/battery-charging-wireless-50.svg
diff --git a/icons/battery/battery-charging-wireless-60.svg b/_docs/icons/battery/battery-charging-wireless-60.svg
similarity index 100%
rename from icons/battery/battery-charging-wireless-60.svg
rename to _docs/icons/battery/battery-charging-wireless-60.svg
diff --git a/icons/battery/battery-charging-wireless-70.svg b/_docs/icons/battery/battery-charging-wireless-70.svg
similarity index 100%
rename from icons/battery/battery-charging-wireless-70.svg
rename to _docs/icons/battery/battery-charging-wireless-70.svg
diff --git a/icons/battery/battery-charging-wireless-80.svg b/_docs/icons/battery/battery-charging-wireless-80.svg
similarity index 100%
rename from icons/battery/battery-charging-wireless-80.svg
rename to _docs/icons/battery/battery-charging-wireless-80.svg
diff --git a/icons/battery/battery-charging-wireless-90.svg b/_docs/icons/battery/battery-charging-wireless-90.svg
similarity index 100%
rename from icons/battery/battery-charging-wireless-90.svg
rename to _docs/icons/battery/battery-charging-wireless-90.svg
diff --git a/icons/battery/battery-charging-wireless.svg b/_docs/icons/battery/battery-charging-wireless.svg
similarity index 100%
rename from icons/battery/battery-charging-wireless.svg
rename to _docs/icons/battery/battery-charging-wireless.svg
diff --git a/icons/battery/battery-outline.svg b/_docs/icons/battery/battery-outline.svg
similarity index 100%
rename from icons/battery/battery-outline.svg
rename to _docs/icons/battery/battery-outline.svg
diff --git a/icons/battery/battery-unknown.svg b/_docs/icons/battery/battery-unknown.svg
similarity index 100%
rename from icons/battery/battery-unknown.svg
rename to _docs/icons/battery/battery-unknown.svg
diff --git a/icons/bolus.svg b/_docs/icons/bolus.svg
similarity index 100%
rename from icons/bolus.svg
rename to _docs/icons/bolus.svg
diff --git a/icons/byoda.svg b/_docs/icons/byoda.svg
similarity index 100%
rename from icons/byoda.svg
rename to _docs/icons/byoda.svg
diff --git a/icons/calculator.svg b/_docs/icons/calculator.svg
similarity index 100%
rename from icons/calculator.svg
rename to _docs/icons/calculator.svg
diff --git a/icons/calibration.svg b/_docs/icons/calibration.svg
similarity index 100%
rename from icons/calibration.svg
rename to _docs/icons/calibration.svg
diff --git a/icons/cancel.svg b/_docs/icons/cancel.svg
similarity index 100%
rename from icons/cancel.svg
rename to _docs/icons/cancel.svg
diff --git a/icons/clone.svg b/_docs/icons/clone.svg
similarity index 100%
rename from icons/clone.svg
rename to _docs/icons/clone.svg
diff --git a/icons/clone_48.svg b/_docs/icons/clone_48.svg
similarity index 100%
rename from icons/clone_48.svg
rename to _docs/icons/clone_48.svg
diff --git a/icons/combo.svg b/_docs/icons/combo.svg
similarity index 100%
rename from icons/combo.svg
rename to _docs/icons/combo.svg
diff --git a/icons/compare_profiles.svg b/_docs/icons/compare_profiles.svg
similarity index 100%
rename from icons/compare_profiles.svg
rename to _docs/icons/compare_profiles.svg
diff --git a/icons/complications-source/ic_br_cob_iob_orig.svg b/_docs/icons/complications-source/ic_br_cob_iob_orig.svg
similarity index 100%
rename from icons/complications-source/ic_br_cob_iob_orig.svg
rename to _docs/icons/complications-source/ic_br_cob_iob_orig.svg
diff --git a/icons/complications-source/ic_cob_detailed_orig.svg b/_docs/icons/complications-source/ic_cob_detailed_orig.svg
similarity index 100%
rename from icons/complications-source/ic_cob_detailed_orig.svg
rename to _docs/icons/complications-source/ic_cob_detailed_orig.svg
diff --git a/icons/complications-source/ic_cob_iob_orig.svg b/_docs/icons/complications-source/ic_cob_iob_orig.svg
similarity index 100%
rename from icons/complications-source/ic_cob_iob_orig.svg
rename to _docs/icons/complications-source/ic_cob_iob_orig.svg
diff --git a/icons/complications-source/ic_ins_burnin_orig.svg b/_docs/icons/complications-source/ic_ins_burnin_orig.svg
similarity index 100%
rename from icons/complications-source/ic_ins_burnin_orig.svg
rename to _docs/icons/complications-source/ic_ins_burnin_orig.svg
diff --git a/icons/complications-source/ic_ins_orig.svg b/_docs/icons/complications-source/ic_ins_orig.svg
similarity index 100%
rename from icons/complications-source/ic_ins_orig.svg
rename to _docs/icons/complications-source/ic_ins_orig.svg
diff --git a/icons/complications-source/ic_iob_detailed_orig.svg b/_docs/icons/complications-source/ic_iob_detailed_orig.svg
similarity index 100%
rename from icons/complications-source/ic_iob_detailed_orig.svg
rename to _docs/icons/complications-source/ic_iob_detailed_orig.svg
diff --git a/icons/complications/ic_aaps_full.svg b/_docs/icons/complications/ic_aaps_full.svg
similarity index 100%
rename from icons/complications/ic_aaps_full.svg
rename to _docs/icons/complications/ic_aaps_full.svg
diff --git a/icons/complications/ic_basal.svg b/_docs/icons/complications/ic_basal.svg
similarity index 100%
rename from icons/complications/ic_basal.svg
rename to _docs/icons/complications/ic_basal.svg
diff --git a/icons/complications/ic_br_cob_iob.svg b/_docs/icons/complications/ic_br_cob_iob.svg
similarity index 100%
rename from icons/complications/ic_br_cob_iob.svg
rename to _docs/icons/complications/ic_br_cob_iob.svg
diff --git a/icons/complications/ic_carbs.svg b/_docs/icons/complications/ic_carbs.svg
similarity index 100%
rename from icons/complications/ic_carbs.svg
rename to _docs/icons/complications/ic_carbs.svg
diff --git a/icons/complications/ic_cob_detailed.svg b/_docs/icons/complications/ic_cob_detailed.svg
similarity index 100%
rename from icons/complications/ic_cob_detailed.svg
rename to _docs/icons/complications/ic_cob_detailed.svg
diff --git a/icons/complications/ic_cob_iob.svg b/_docs/icons/complications/ic_cob_iob.svg
similarity index 100%
rename from icons/complications/ic_cob_iob.svg
rename to _docs/icons/complications/ic_cob_iob.svg
diff --git a/icons/complications/ic_ins.svg b/_docs/icons/complications/ic_ins.svg
similarity index 100%
rename from icons/complications/ic_ins.svg
rename to _docs/icons/complications/ic_ins.svg
diff --git a/icons/complications/ic_ins_burnin.svg b/_docs/icons/complications/ic_ins_burnin.svg
similarity index 100%
rename from icons/complications/ic_ins_burnin.svg
rename to _docs/icons/complications/ic_ins_burnin.svg
diff --git a/icons/complications/ic_iob_detailed.svg b/_docs/icons/complications/ic_iob_detailed.svg
similarity index 100%
rename from icons/complications/ic_iob_detailed.svg
rename to _docs/icons/complications/ic_iob_detailed.svg
diff --git a/icons/complications/ic_sgv.svg b/_docs/icons/complications/ic_sgv.svg
similarity index 100%
rename from icons/complications/ic_sgv.svg
rename to _docs/icons/complications/ic_sgv.svg
diff --git a/icons/confirm.svg b/_docs/icons/confirm.svg
similarity index 100%
rename from icons/confirm.svg
rename to _docs/icons/confirm.svg
diff --git a/icons/cp_aaps_offline.svg b/_docs/icons/cp_aaps_offline.svg
similarity index 100%
rename from icons/cp_aaps_offline.svg
rename to _docs/icons/cp_aaps_offline.svg
diff --git a/icons/cp_age_batterie.svg b/_docs/icons/cp_age_batterie.svg
similarity index 100%
rename from icons/cp_age_batterie.svg
rename to _docs/icons/cp_age_batterie.svg
diff --git a/icons/cp_age_canula.svg b/_docs/icons/cp_age_canula.svg
similarity index 100%
rename from icons/cp_age_canula.svg
rename to _docs/icons/cp_age_canula.svg
diff --git a/icons/cp_age_insulin.svg b/_docs/icons/cp_age_insulin.svg
similarity index 100%
rename from icons/cp_age_insulin.svg
rename to _docs/icons/cp_age_insulin.svg
diff --git a/icons/cp_age_sensor.svg b/_docs/icons/cp_age_sensor.svg
similarity index 100%
rename from icons/cp_age_sensor.svg
rename to _docs/icons/cp_age_sensor.svg
diff --git a/icons/cp_announcement.svg b/_docs/icons/cp_announcement.svg
similarity index 100%
rename from icons/cp_announcement.svg
rename to _docs/icons/cp_announcement.svg
diff --git a/icons/cp_basal_end.svg b/_docs/icons/cp_basal_end.svg
similarity index 100%
rename from icons/cp_basal_end.svg
rename to _docs/icons/cp_basal_end.svg
diff --git a/icons/cp_basal_no_tbr.svg b/_docs/icons/cp_basal_no_tbr.svg
similarity index 100%
rename from icons/cp_basal_no_tbr.svg
rename to _docs/icons/cp_basal_no_tbr.svg
diff --git a/icons/cp_basal_tbr_high.svg b/_docs/icons/cp_basal_tbr_high.svg
similarity index 100%
rename from icons/cp_basal_tbr_high.svg
rename to _docs/icons/cp_basal_tbr_high.svg
diff --git a/icons/cp_basal_tbr_low.svg b/_docs/icons/cp_basal_tbr_low.svg
similarity index 100%
rename from icons/cp_basal_tbr_low.svg
rename to _docs/icons/cp_basal_tbr_low.svg
diff --git a/icons/cp_bgcheck.svg b/_docs/icons/cp_bgcheck.svg
similarity index 100%
rename from icons/cp_bgcheck.svg
rename to _docs/icons/cp_bgcheck.svg
diff --git a/icons/cp_bgcheck2.svg b/_docs/icons/cp_bgcheck2.svg
similarity index 100%
rename from icons/cp_bgcheck2.svg
rename to _docs/icons/cp_bgcheck2.svg
diff --git a/icons/cp_bolus_carbs.svg b/_docs/icons/cp_bolus_carbs.svg
similarity index 100%
rename from icons/cp_bolus_carbs.svg
rename to _docs/icons/cp_bolus_carbs.svg
diff --git a/icons/cp_bolus_combo.svg b/_docs/icons/cp_bolus_combo.svg
similarity index 100%
rename from icons/cp_bolus_combo.svg
rename to _docs/icons/cp_bolus_combo.svg
diff --git a/icons/cp_bolus_correction.svg b/_docs/icons/cp_bolus_correction.svg
similarity index 100%
rename from icons/cp_bolus_correction.svg
rename to _docs/icons/cp_bolus_correction.svg
diff --git a/icons/cp_bolus_meal.svg b/_docs/icons/cp_bolus_meal.svg
similarity index 100%
rename from icons/cp_bolus_meal.svg
rename to _docs/icons/cp_bolus_meal.svg
diff --git a/icons/cp_bolus_snack.svg b/_docs/icons/cp_bolus_snack.svg
similarity index 100%
rename from icons/cp_bolus_snack.svg
rename to _docs/icons/cp_bolus_snack.svg
diff --git a/icons/cp_cgm_insert.svg b/_docs/icons/cp_cgm_insert.svg
similarity index 100%
rename from icons/cp_cgm_insert.svg
rename to _docs/icons/cp_cgm_insert.svg
diff --git a/icons/cp_cgm_profile.svg b/_docs/icons/cp_cgm_profile.svg
similarity index 100%
rename from icons/cp_cgm_profile.svg
rename to _docs/icons/cp_cgm_profile.svg
diff --git a/icons/cp_cgm_start.svg b/_docs/icons/cp_cgm_start.svg
similarity index 100%
rename from icons/cp_cgm_start.svg
rename to _docs/icons/cp_cgm_start.svg
diff --git a/icons/cp_cgm_target.svg b/_docs/icons/cp_cgm_target.svg
similarity index 100%
rename from icons/cp_cgm_target.svg
rename to _docs/icons/cp_cgm_target.svg
diff --git a/icons/cp_exercise.svg b/_docs/icons/cp_exercise.svg
similarity index 100%
rename from icons/cp_exercise.svg
rename to _docs/icons/cp_exercise.svg
diff --git a/icons/cp_note.svg b/_docs/icons/cp_note.svg
similarity index 100%
rename from icons/cp_note.svg
rename to _docs/icons/cp_note.svg
diff --git a/icons/cp_pump_battery.svg b/_docs/icons/cp_pump_battery.svg
similarity index 100%
rename from icons/cp_pump_battery.svg
rename to _docs/icons/cp_pump_battery.svg
diff --git a/icons/cp_pump_canula.svg b/_docs/icons/cp_pump_canula.svg
similarity index 100%
rename from icons/cp_pump_canula.svg
rename to _docs/icons/cp_pump_canula.svg
diff --git a/icons/cp_pump_cartridge.svg b/_docs/icons/cp_pump_cartridge.svg
similarity index 100%
rename from icons/cp_pump_cartridge.svg
rename to _docs/icons/cp_pump_cartridge.svg
diff --git a/icons/cp_question.svg b/_docs/icons/cp_question.svg
similarity index 100%
rename from icons/cp_question.svg
rename to _docs/icons/cp_question.svg
diff --git a/icons/danar_useropt.svg b/_docs/icons/danar_useropt.svg
similarity index 100%
rename from icons/danar_useropt.svg
rename to _docs/icons/danar_useropt.svg
diff --git a/icons/danarhistory.svg b/_docs/icons/danarhistory.svg
similarity index 100%
rename from icons/danarhistory.svg
rename to _docs/icons/danarhistory.svg
diff --git a/icons/danarprofile.svg b/_docs/icons/danarprofile.svg
similarity index 100%
rename from icons/danarprofile.svg
rename to _docs/icons/danarprofile.svg
diff --git a/icons/danars.svg b/_docs/icons/danars.svg
similarity index 100%
rename from icons/danars.svg
rename to _docs/icons/danars.svg
diff --git a/icons/danarstat.svg b/_docs/icons/danarstat.svg
similarity index 100%
rename from icons/danarstat.svg
rename to _docs/icons/danarstat.svg
diff --git a/icons/excel.svg b/_docs/icons/excel.svg
similarity index 100%
rename from icons/excel.svg
rename to _docs/icons/excel.svg
diff --git a/icons/export_settings.svg b/_docs/icons/export_settings.svg
similarity index 100%
rename from icons/export_settings.svg
rename to _docs/icons/export_settings.svg
diff --git a/icons/ic_DoubleDown.svg b/_docs/icons/ic_DoubleDown.svg
similarity index 100%
rename from icons/ic_DoubleDown.svg
rename to _docs/icons/ic_DoubleDown.svg
diff --git a/icons/ic_DoubleUp.svg b/_docs/icons/ic_DoubleUp.svg
similarity index 100%
rename from icons/ic_DoubleUp.svg
rename to _docs/icons/ic_DoubleUp.svg
diff --git a/icons/ic_Flat.svg b/_docs/icons/ic_Flat.svg
similarity index 100%
rename from icons/ic_Flat.svg
rename to _docs/icons/ic_Flat.svg
diff --git a/icons/ic_FortyFiveDown.svg b/_docs/icons/ic_FortyFiveDown.svg
similarity index 100%
rename from icons/ic_FortyFiveDown.svg
rename to _docs/icons/ic_FortyFiveDown.svg
diff --git a/icons/ic_FortyFiveUp.svg b/_docs/icons/ic_FortyFiveUp.svg
similarity index 100%
rename from icons/ic_FortyFiveUp.svg
rename to _docs/icons/ic_FortyFiveUp.svg
diff --git a/icons/ic_Invalid.svg b/_docs/icons/ic_Invalid.svg
similarity index 100%
rename from icons/ic_Invalid.svg
rename to _docs/icons/ic_Invalid.svg
diff --git a/icons/ic_SingleDown.svg b/_docs/icons/ic_SingleDown.svg
similarity index 100%
rename from icons/ic_SingleDown.svg
rename to _docs/icons/ic_SingleDown.svg
diff --git a/icons/ic_SingleUp.svg b/_docs/icons/ic_SingleUp.svg
similarity index 100%
rename from icons/ic_SingleUp.svg
rename to _docs/icons/ic_SingleUp.svg
diff --git a/icons/ic_error.svg b/_docs/icons/ic_error.svg
similarity index 100%
rename from icons/ic_error.svg
rename to _docs/icons/ic_error.svg
diff --git a/icons/ic_exit_to_app.svg b/_docs/icons/ic_exit_to_app.svg
similarity index 100%
rename from icons/ic_exit_to_app.svg
rename to _docs/icons/ic_exit_to_app.svg
diff --git a/icons/ic_home_loop.svg b/_docs/icons/ic_home_loop.svg
similarity index 100%
rename from icons/ic_home_loop.svg
rename to _docs/icons/ic_home_loop.svg
diff --git a/icons/ic_maintenance.svg b/_docs/icons/ic_maintenance.svg
similarity index 100%
rename from icons/ic_maintenance.svg
rename to _docs/icons/ic_maintenance.svg
diff --git a/icons/ic_notif_aaps.svg b/_docs/icons/ic_notif_aaps.svg
similarity index 100%
rename from icons/ic_notif_aaps.svg
rename to _docs/icons/ic_notif_aaps.svg
diff --git a/icons/ic_notif_nsclient.svg b/_docs/icons/ic_notif_nsclient.svg
similarity index 100%
rename from icons/ic_notif_nsclient.svg
rename to _docs/icons/ic_notif_nsclient.svg
diff --git a/icons/ic_notif_pumpcontrol.svg b/_docs/icons/ic_notif_pumpcontrol.svg
similarity index 100%
rename from icons/ic_notif_pumpcontrol.svg
rename to _docs/icons/ic_notif_pumpcontrol.svg
diff --git a/icons/ic_warning.svg b/_docs/icons/ic_warning.svg
similarity index 100%
rename from icons/ic_warning.svg
rename to _docs/icons/ic_warning.svg
diff --git a/icons/icon_snooze.svg b/_docs/icons/icon_snooze.svg
similarity index 100%
rename from icons/icon_snooze.svg
rename to _docs/icons/icon_snooze.svg
diff --git a/icons/import_settings.svg b/_docs/icons/import_settings.svg
similarity index 100%
rename from icons/import_settings.svg
rename to _docs/icons/import_settings.svg
diff --git a/icons/insight.svg b/_docs/icons/insight.svg
similarity index 100%
rename from icons/insight.svg
rename to _docs/icons/insight.svg
diff --git a/icons/insight_128.svg b/_docs/icons/insight_128.svg
similarity index 100%
rename from icons/insight_128.svg
rename to _docs/icons/insight_128.svg
diff --git a/icons/local_activate.svg b/_docs/icons/local_activate.svg
similarity index 100%
rename from icons/local_activate.svg
rename to _docs/icons/local_activate.svg
diff --git a/icons/local_reset.svg b/_docs/icons/local_reset.svg
similarity index 100%
rename from icons/local_reset.svg
rename to _docs/icons/local_reset.svg
diff --git a/icons/local_save.svg b/_docs/icons/local_save.svg
similarity index 100%
rename from icons/local_save.svg
rename to _docs/icons/local_save.svg
diff --git a/icons/log_delete.svg b/_docs/icons/log_delete.svg
similarity index 100%
rename from icons/log_delete.svg
rename to _docs/icons/log_delete.svg
diff --git a/icons/log_settings.svg b/_docs/icons/log_settings.svg
similarity index 100%
rename from icons/log_settings.svg
rename to _docs/icons/log_settings.svg
diff --git a/icons/loop.svg b/_docs/icons/loop.svg
similarity index 100%
rename from icons/loop.svg
rename to _docs/icons/loop.svg
diff --git a/icons/loop_closed.svg b/_docs/icons/loop_closed.svg
similarity index 100%
rename from icons/loop_closed.svg
rename to _docs/icons/loop_closed.svg
diff --git a/icons/loop_disabled.svg b/_docs/icons/loop_disabled.svg
similarity index 100%
rename from icons/loop_disabled.svg
rename to _docs/icons/loop_disabled.svg
diff --git a/icons/loop_disconnected.svg b/_docs/icons/loop_disconnected.svg
similarity index 100%
rename from icons/loop_disconnected.svg
rename to _docs/icons/loop_disconnected.svg
diff --git a/icons/loop_lgs.svg b/_docs/icons/loop_lgs.svg
similarity index 100%
rename from icons/loop_lgs.svg
rename to _docs/icons/loop_lgs.svg
diff --git a/icons/loop_off.svg b/_docs/icons/loop_off.svg
similarity index 100%
rename from icons/loop_off.svg
rename to _docs/icons/loop_off.svg
diff --git a/icons/loop_open.svg b/_docs/icons/loop_open.svg
similarity index 100%
rename from icons/loop_open.svg
rename to _docs/icons/loop_open.svg
diff --git a/icons/loop_paused.svg b/_docs/icons/loop_paused.svg
similarity index 100%
rename from icons/loop_paused.svg
rename to _docs/icons/loop_paused.svg
diff --git a/icons/loop_reconnect.svg b/_docs/icons/loop_reconnect.svg
similarity index 100%
rename from icons/loop_reconnect.svg
rename to _docs/icons/loop_reconnect.svg
diff --git a/icons/loop_resume.svg b/_docs/icons/loop_resume.svg
similarity index 100%
rename from icons/loop_resume.svg
rename to _docs/icons/loop_resume.svg
diff --git a/icons/loop_superbolus.svg b/_docs/icons/loop_superbolus.svg
similarity index 100%
rename from icons/loop_superbolus.svg
rename to _docs/icons/loop_superbolus.svg
diff --git a/icons/pod.svg b/_docs/icons/pod.svg
similarity index 100%
rename from icons/pod.svg
rename to _docs/icons/pod.svg
diff --git a/icons/quickwizard.svg b/_docs/icons/quickwizard.svg
similarity index 100%
rename from icons/quickwizard.svg
rename to _docs/icons/quickwizard.svg
diff --git a/icons/remove.svg b/_docs/icons/remove.svg
similarity index 100%
rename from icons/remove.svg
rename to _docs/icons/remove.svg
diff --git a/icons/reset_database.svg b/_docs/icons/reset_database.svg
similarity index 100%
rename from icons/reset_database.svg
rename to _docs/icons/reset_database.svg
diff --git a/icons/send_log.svg b/_docs/icons/send_log.svg
similarity index 100%
rename from icons/send_log.svg
rename to _docs/icons/send_log.svg
diff --git a/icons/setting_off.svg b/_docs/icons/setting_off.svg
similarity index 100%
rename from icons/setting_off.svg
rename to _docs/icons/setting_off.svg
diff --git a/icons/setting_on.svg b/_docs/icons/setting_on.svg
similarity index 100%
rename from icons/setting_on.svg
rename to _docs/icons/setting_on.svg
diff --git a/icons/target_activity.svg b/_docs/icons/target_activity.svg
similarity index 100%
rename from icons/target_activity.svg
rename to _docs/icons/target_activity.svg
diff --git a/icons/target_cancel.svg b/_docs/icons/target_cancel.svg
similarity index 100%
rename from icons/target_cancel.svg
rename to _docs/icons/target_cancel.svg
diff --git a/icons/target_eatingsoon.svg b/_docs/icons/target_eatingsoon.svg
similarity index 100%
rename from icons/target_eatingsoon.svg
rename to _docs/icons/target_eatingsoon.svg
diff --git a/icons/target_hypo.svg b/_docs/icons/target_hypo.svg
similarity index 100%
rename from icons/target_hypo.svg
rename to _docs/icons/target_hypo.svg
diff --git a/icons/target_manual.svg b/_docs/icons/target_manual.svg
similarity index 100%
rename from icons/target_manual.svg
rename to _docs/icons/target_manual.svg
diff --git a/icons/temp-basal/icon_cp_basal_100px.psd b/_docs/icons/temp-basal/icon_cp_basal_100px.psd
similarity index 100%
rename from icons/temp-basal/icon_cp_basal_100px.psd
rename to _docs/icons/temp-basal/icon_cp_basal_100px.psd
diff --git a/icons/temp-basal/icon_cp_basal_150px.psd b/_docs/icons/temp-basal/icon_cp_basal_150px.psd
similarity index 100%
rename from icons/temp-basal/icon_cp_basal_150px.psd
rename to _docs/icons/temp-basal/icon_cp_basal_150px.psd
diff --git a/icons/temp-basal/icon_cp_basal_200px.psd b/_docs/icons/temp-basal/icon_cp_basal_200px.psd
similarity index 100%
rename from icons/temp-basal/icon_cp_basal_200px.psd
rename to _docs/icons/temp-basal/icon_cp_basal_200px.psd
diff --git a/icons/temp-basal/icon_cp_basal_50px.psd b/_docs/icons/temp-basal/icon_cp_basal_50px.psd
similarity index 100%
rename from icons/temp-basal/icon_cp_basal_50px.psd
rename to _docs/icons/temp-basal/icon_cp_basal_50px.psd
diff --git a/icons/temp-basal/icon_cp_basal_75px.psd b/_docs/icons/temp-basal/icon_cp_basal_75px.psd
similarity index 100%
rename from icons/temp-basal/icon_cp_basal_75px.psd
rename to _docs/icons/temp-basal/icon_cp_basal_75px.psd
diff --git a/icons/temptarget_flat.svg b/_docs/icons/temptarget_flat.svg
similarity index 100%
rename from icons/temptarget_flat.svg
rename to _docs/icons/temptarget_flat.svg
diff --git a/icons/temptarget_high.svg b/_docs/icons/temptarget_high.svg
similarity index 100%
rename from icons/temptarget_high.svg
rename to _docs/icons/temptarget_high.svg
diff --git a/icons/temptarget_low.svg b/_docs/icons/temptarget_low.svg
similarity index 100%
rename from icons/temptarget_low.svg
rename to _docs/icons/temptarget_low.svg
diff --git a/icons/veo.svg b/_docs/icons/veo.svg
similarity index 100%
rename from icons/veo.svg
rename to _docs/icons/veo.svg
diff --git a/icons/visibility.svg b/_docs/icons/visibility.svg
similarity index 100%
rename from icons/visibility.svg
rename to _docs/icons/visibility.svg
diff --git a/icons/x_swap_vert.svg b/_docs/icons/x_swap_vert.svg
similarity index 100%
rename from icons/x_swap_vert.svg
rename to _docs/icons/x_swap_vert.svg
diff --git a/icons/xdrip.svg b/_docs/icons/xdrip.svg
similarity index 100%
rename from icons/xdrip.svg
rename to _docs/icons/xdrip.svg
diff --git a/logo/androiaps.eps b/_docs/logo/androiaps.eps
similarity index 100%
rename from logo/androiaps.eps
rename to _docs/logo/androiaps.eps
diff --git a/logo/androiaps_tshirt.pdf b/_docs/logo/androiaps_tshirt.pdf
similarity index 100%
rename from logo/androiaps_tshirt.pdf
rename to _docs/logo/androiaps_tshirt.pdf
diff --git a/logo/androidaps.ai b/_docs/logo/androidaps.ai
similarity index 100%
rename from logo/androidaps.ai
rename to _docs/logo/androidaps.ai
diff --git a/logo/androidaps.pdf b/_docs/logo/androidaps.pdf
similarity index 100%
rename from logo/androidaps.pdf
rename to _docs/logo/androidaps.pdf
diff --git a/logo/androidaps2.ai b/_docs/logo/androidaps2.ai
similarity index 100%
rename from logo/androidaps2.ai
rename to _docs/logo/androidaps2.ai
diff --git a/logo/androidaps2.pdf b/_docs/logo/androidaps2.pdf
similarity index 100%
rename from logo/androidaps2.pdf
rename to _docs/logo/androidaps2.pdf
diff --git a/logo/background-01.svg b/_docs/logo/background-01.svg
similarity index 100%
rename from logo/background-01.svg
rename to _docs/logo/background-01.svg
diff --git a/logo/background.ai b/_docs/logo/background.ai
similarity index 100%
rename from logo/background.ai
rename to _docs/logo/background.ai
diff --git a/logo/background.pdf b/_docs/logo/background.pdf
similarity index 100%
rename from logo/background.pdf
rename to _docs/logo/background.pdf
diff --git a/app/src/main/blueowl-web.png b/_docs/logo/blueowl-web.png
similarity index 100%
rename from app/src/main/blueowl-web.png
rename to _docs/logo/blueowl-web.png
diff --git a/logo/drawing.png b/_docs/logo/drawing.png
similarity index 100%
rename from logo/drawing.png
rename to _docs/logo/drawing.png
diff --git a/logo/drawing.svg b/_docs/logo/drawing.svg
similarity index 100%
rename from logo/drawing.svg
rename to _docs/logo/drawing.svg
diff --git a/app/src/main/ic_launcher-web.png b/_docs/logo/ic_launcher-web.png
similarity index 100%
rename from app/src/main/ic_launcher-web.png
rename to _docs/logo/ic_launcher-web.png
diff --git a/app/src/main/ic_launcher_round-web.png b/_docs/logo/ic_launcher_round-web.png
similarity index 100%
rename from app/src/main/ic_launcher_round-web.png
rename to _docs/logo/ic_launcher_round-web.png
diff --git a/logo/icons.ai b/_docs/logo/icons.ai
similarity index 100%
rename from logo/icons.ai
rename to _docs/logo/icons.ai
diff --git a/logo/icons.pdf b/_docs/logo/icons.pdf
similarity index 100%
rename from logo/icons.pdf
rename to _docs/logo/icons.pdf
diff --git a/logo/icons.svg b/_docs/logo/icons.svg
similarity index 100%
rename from logo/icons.svg
rename to _docs/logo/icons.svg
diff --git a/logo/logo.md b/_docs/logo/logo.md
similarity index 100%
rename from logo/logo.md
rename to _docs/logo/logo.md
diff --git a/logo/logo_androidaps.ai b/_docs/logo/logo_androidaps.ai
similarity index 100%
rename from logo/logo_androidaps.ai
rename to _docs/logo/logo_androidaps.ai
diff --git a/logo/logo_androidaps.pdf b/_docs/logo/logo_androidaps.pdf
similarity index 100%
rename from logo/logo_androidaps.pdf
rename to _docs/logo/logo_androidaps.pdf
diff --git a/logo/logo_androidaps.svg b/_docs/logo/logo_androidaps.svg
similarity index 100%
rename from logo/logo_androidaps.svg
rename to _docs/logo/logo_androidaps.svg
diff --git a/logo/logoanaps.png b/_docs/logo/logoanaps.png
similarity index 100%
rename from logo/logoanaps.png
rename to _docs/logo/logoanaps.png
diff --git a/logo/notif_icon.png b/_docs/logo/notif_icon.png
similarity index 100%
rename from logo/notif_icon.png
rename to _docs/logo/notif_icon.png
diff --git a/logo/notificationdot.png b/_docs/logo/notificationdot.png
similarity index 100%
rename from logo/notificationdot.png
rename to _docs/logo/notificationdot.png
diff --git a/logo/notificationdot2.png b/_docs/logo/notificationdot2.png
similarity index 100%
rename from logo/notificationdot2.png
rename to _docs/logo/notificationdot2.png
diff --git a/logo/nsclient/white.png b/_docs/logo/nsclient/white.png
similarity index 100%
rename from logo/nsclient/white.png
rename to _docs/logo/nsclient/white.png
diff --git a/logo/old/AndroidAPS Icon.ai b/_docs/logo/old/AndroidAPS Icon.ai
similarity index 100%
rename from logo/old/AndroidAPS Icon.ai
rename to _docs/logo/old/AndroidAPS Icon.ai
diff --git a/logo/old/AndroidAPS Icon.png b/_docs/logo/old/AndroidAPS Icon.png
similarity index 100%
rename from logo/old/AndroidAPS Icon.png
rename to _docs/logo/old/AndroidAPS Icon.png
diff --git a/logo/pattern.ai b/_docs/logo/pattern.ai
similarity index 100%
rename from logo/pattern.ai
rename to _docs/logo/pattern.ai
diff --git a/logo/pattern.pdf b/_docs/logo/pattern.pdf
similarity index 100%
rename from logo/pattern.pdf
rename to _docs/logo/pattern.pdf
diff --git a/logo/pattern.svg b/_docs/logo/pattern.svg
similarity index 100%
rename from logo/pattern.svg
rename to _docs/logo/pattern.svg
diff --git a/logo/screenshot.png b/_docs/logo/screenshot.png
similarity index 100%
rename from logo/screenshot.png
rename to _docs/logo/screenshot.png
diff --git a/logo/tshirt.png b/_docs/logo/tshirt.png
similarity index 100%
rename from logo/tshirt.png
rename to _docs/logo/tshirt.png
diff --git a/revoking_leaked_apks.md b/_docs/revoking_leaked_apks.md
similarity index 100%
rename from revoking_leaked_apks.md
rename to _docs/revoking_leaked_apks.md
diff --git a/app/build.gradle b/app/build.gradle
index 1fa1442669..f6d9d81088 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -105,7 +105,7 @@ android {
defaultConfig {
multiDexEnabled true
versionCode 1500
- version "3.1.0.3-dev-b"
+ version "3.1.0.3-dev-c"
buildConfigField "String", "VERSION", '"' + version + '"'
buildConfigField "String", "BUILDVERSION", '"' + generateGitBuild() + '-' + generateDate() + '"'
buildConfigField "String", "REMOTE", '"' + generateGitRemote() + '"'
@@ -119,7 +119,7 @@ android {
full {
applicationId "info.nightscout.androidaps"
dimension "standard"
- resValue "string", "app_name", "AndroidAPS"
+ resValue "string", "app_name", "AAPS"
versionName version
manifestPlaceholders = [
appIcon : "@mipmap/ic_launcher",
@@ -136,21 +136,21 @@ android {
appIconRound: "@null"
]
}
- nsclient {
- applicationId "info.nightscout.nsclient"
+ aapsclient {
+ applicationId "info.nightscout.aapsclient"
dimension "standard"
- resValue "string", "app_name", "NSClient"
- versionName version + "-nsclient"
+ resValue "string", "app_name", "AAPSClient"
+ versionName version + "-aapsclient"
manifestPlaceholders = [
appIcon : "@mipmap/ic_yellowowl",
appIconRound: "@null"
]
}
- nsclient2 {
- applicationId "info.nightscout.nsclient2"
+ aapsclient2 {
+ applicationId "info.nightscout.aapsclient2"
dimension "standard"
- resValue "string", "app_name", "NSClient2"
- versionName version + "-nsclient"
+ resValue "string", "app_name", "AAPSClient2"
+ versionName version + "-aapsclient"
manifestPlaceholders = [
appIcon : "@mipmap/ic_yellowowl",
appIconRound: "@null"
@@ -159,6 +159,10 @@ android {
}
useLibrary "org.apache.http.legacy"
+
+ dataBinding { //Deleting it causes a binding error
+ enabled = true
+ }
}
allprojects {
@@ -169,22 +173,31 @@ allprojects {
dependencies {
wearApp project(':wear')
+ // in order to use internet's versions you'd need to enable Jetifier again
+ // https://github.com/nightscout/graphview.git
+ // https://github.com/nightscout/iconify.git
+ implementation project(':graphview')
+ implementation project(':libraries')
implementation project(':shared')
implementation project(':core')
- implementation project(':automation')
- implementation project(':combo')
+ implementation project(':ui')
+ implementation project(':plugins')
+ implementation project(':implementation')
implementation project(':database')
- implementation project(':dana')
- implementation project(':danars')
- implementation project(':danar')
+ implementation project(':pump:combo')
+ implementation project(':pump:dana')
+ implementation project(':pump:danars')
+ implementation project(':pump:danar')
+ implementation project(':pump:diaconn')
+ implementation project(':pump:eopatch')
implementation project(':insight')
- implementation project(':pump-common')
- implementation project(':rileylink')
- implementation project(':medtronic')
- implementation project(':omnipod-common')
- implementation project(':omnipod-eros')
- implementation project(':omnipod-dash')
- implementation project(':diaconn')
+ implementation project(':pump:medtronic')
+ implementation project(':pump:pump-common')
+ implementation project(':pump:rileylink')
+ implementation project(':pump:omnipod-common')
+ implementation project(':pump:omnipod-eros')
+ implementation project(':pump:omnipod-dash')
+ implementation project(':automation')
implementation project(':openhumans')
implementation fileTree(include: ['*.jar'], dir: 'libs')
diff --git a/app/google-services.json b/app/google-services.json
index 507c792c93..11c7efe359 100644
--- a/app/google-services.json
+++ b/app/google-services.json
@@ -6,6 +6,64 @@
"storage_bucket": "androidaps-c34f8.appspot.com"
},
"client": [
+ {
+ "client_info": {
+ "mobilesdk_app_id": "1:477603612366:android:56b8fa16651fb8dbfcb29f",
+ "android_client_info": {
+ "package_name": "info.nightscout.aapsclient"
+ }
+ },
+ "oauth_client": [
+ {
+ "client_id": "477603612366-a925drvlvs7qn7gt73r585erbqto8c79.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ],
+ "api_key": [
+ {
+ "current_key": "AIzaSyD9HRtJJsnk_SbAMAuvudSua2vEm3j3430"
+ }
+ ],
+ "services": {
+ "appinvite_service": {
+ "other_platform_oauth_client": [
+ {
+ "client_id": "477603612366-a925drvlvs7qn7gt73r585erbqto8c79.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ]
+ }
+ }
+ },
+ {
+ "client_info": {
+ "mobilesdk_app_id": "1:477603612366:android:8e749a9253635bcafcb29f",
+ "android_client_info": {
+ "package_name": "info.nightscout.aapsclient2"
+ }
+ },
+ "oauth_client": [
+ {
+ "client_id": "477603612366-a925drvlvs7qn7gt73r585erbqto8c79.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ],
+ "api_key": [
+ {
+ "current_key": "AIzaSyD9HRtJJsnk_SbAMAuvudSua2vEm3j3430"
+ }
+ ],
+ "services": {
+ "appinvite_service": {
+ "other_platform_oauth_client": [
+ {
+ "client_id": "477603612366-a925drvlvs7qn7gt73r585erbqto8c79.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ]
+ }
+ }
+ },
{
"client_info": {
"mobilesdk_app_id": "1:477603612366:android:aef229914e3e5448",
@@ -21,7 +79,7 @@
],
"api_key": [
{
- "current_key": "AIzaSyDcZpDRMaGjdhihXp531cVYM6LkEL8KbgM"
+ "current_key": "AIzaSyD9HRtJJsnk_SbAMAuvudSua2vEm3j3430"
}
],
"services": {
@@ -50,7 +108,7 @@
],
"api_key": [
{
- "current_key": "AIzaSyDcZpDRMaGjdhihXp531cVYM6LkEL8KbgM"
+ "current_key": "AIzaSyD9HRtJJsnk_SbAMAuvudSua2vEm3j3430"
}
],
"services": {
@@ -79,7 +137,7 @@
],
"api_key": [
{
- "current_key": "AIzaSyDcZpDRMaGjdhihXp531cVYM6LkEL8KbgM"
+ "current_key": "AIzaSyD9HRtJJsnk_SbAMAuvudSua2vEm3j3430"
}
],
"services": {
@@ -108,7 +166,7 @@
],
"api_key": [
{
- "current_key": "AIzaSyDcZpDRMaGjdhihXp531cVYM6LkEL8KbgM"
+ "current_key": "AIzaSyD9HRtJJsnk_SbAMAuvudSua2vEm3j3430"
}
],
"services": {
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index ed8747157d..df917c1f79 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -10,11 +10,6 @@
-
-
-
-
-
@@ -51,27 +46,6 @@
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -116,18 +90,10 @@
android:name=".activities.TreatmentsActivity"
android:exported="false"
android:theme="@style/AppTheme" />
-
-
-
-
-
-
-
-
-
DokiActivity.start(context = this@MainActivity) }
+ .setNeutralButton(rh.gs(R.string.cta_dont_kill_my_app_info)) { _, _ ->
+ startActivity(
+ Intent(
+ Intent.ACTION_VIEW,
+ Uri.parse("https://dontkillmyapp.com/" + Build.MANUFACTURER.lowercase().replace(" ", "-"))
+ )
+ )
+ }
.create().apply {
show()
findViewById(android.R.id.message)?.movementMethod = LinkMovementMethod.getInstance()
@@ -375,12 +394,12 @@ class MainActivity : NoSplashAppCompatActivity() {
})
return true
}
-/*
- R.id.nav_survey -> {
- startActivity(Intent(this, SurveyActivity::class.java))
- return true
- }
-*/
+ /*
+ R.id.nav_survey -> {
+ startActivity(Intent(this, SurveyActivity::class.java))
+ return true
+ }
+ */
R.id.nav_defaultprofile -> {
startActivity(Intent(this, ProfileHelperActivity::class.java))
return true
@@ -407,6 +426,7 @@ class MainActivity : NoSplashAppCompatActivity() {
binding.mainPager.currentItem = 0
return
}
+ @Suppress("DEPRECATION")
super.onBackPressed()
}
diff --git a/app/src/main/java/info/nightscout/androidaps/MainApp.kt b/app/src/main/java/info/nightscout/androidaps/MainApp.kt
index 62468ebbd9..020153365a 100644
--- a/app/src/main/java/info/nightscout/androidaps/MainApp.kt
+++ b/app/src/main/java/info/nightscout/androidaps/MainApp.kt
@@ -23,8 +23,10 @@ import info.nightscout.androidaps.database.transactions.VersionChangeTransaction
import info.nightscout.androidaps.db.CompatDBHelper
import info.nightscout.androidaps.di.DaggerAppComponent
import info.nightscout.androidaps.di.StaticInjector
+import info.nightscout.androidaps.interfaces.BuildHelper
import info.nightscout.androidaps.interfaces.Config
import info.nightscout.androidaps.interfaces.ConfigBuilder
+import info.nightscout.androidaps.interfaces.LocalAlertUtils
import info.nightscout.androidaps.interfaces.PluginBase
import info.nightscout.androidaps.interfaces.ResourceHelper
import info.nightscout.androidaps.logging.UserEntryLogger
@@ -32,30 +34,27 @@ import info.nightscout.androidaps.plugins.configBuilder.PluginStore
import info.nightscout.androidaps.plugins.constraints.versionChecker.VersionCheckerUtils
import info.nightscout.androidaps.plugins.general.overview.notifications.Notification
import info.nightscout.androidaps.plugins.general.overview.notifications.NotificationStore
-import info.nightscout.androidaps.plugins.general.themes.ThemeSwitcherPlugin
+import info.nightscout.plugins.general.themes.ThemeSwitcherPlugin
import info.nightscout.androidaps.receivers.BTReceiver
import info.nightscout.androidaps.receivers.ChargingStateReceiver
import info.nightscout.androidaps.receivers.KeepAliveWorker
import info.nightscout.androidaps.receivers.NetworkChangeReceiver
import info.nightscout.androidaps.receivers.TimeDateOrTZChangeReceiver
import info.nightscout.androidaps.services.AlarmSoundServiceHelper
-import info.nightscout.androidaps.utils.ActivityMonitor
import info.nightscout.androidaps.utils.DateUtil
-import info.nightscout.androidaps.utils.LocalAlertUtils
import info.nightscout.androidaps.utils.ProcessLifecycleListener
-import info.nightscout.androidaps.interfaces.BuildHelper
import info.nightscout.androidaps.utils.locale.LocaleHelper
-import info.nightscout.androidaps.widget.updateWidget
import info.nightscout.shared.logging.AAPSLogger
import info.nightscout.shared.logging.LTag
import info.nightscout.shared.sharedPreferences.SP
+import info.nightscout.ui.utils.ActivityMonitor
+import info.nightscout.ui.widget.Widget
import io.reactivex.rxjava3.disposables.CompositeDisposable
import io.reactivex.rxjava3.exceptions.UndeliverableException
import io.reactivex.rxjava3.kotlin.plusAssign
import io.reactivex.rxjava3.plugins.RxJavaPlugins
import rxdogtag2.RxDogTag
import java.io.IOException
-import java.net.SocketException
import java.util.concurrent.TimeUnit
import javax.inject.Inject
import javax.inject.Provider
@@ -76,7 +75,7 @@ class MainApp : DaggerApplication() {
@Inject lateinit var compatDBHelper: CompatDBHelper
@Inject lateinit var repository: AppRepository
@Inject lateinit var dateUtil: DateUtil
- @Inject lateinit var staticInjector: StaticInjector// TODO avoid , here fake only to initialize
+ @Suppress("unused") @Inject lateinit var staticInjector: StaticInjector// TODO avoid , here fake only to initialize
@Inject lateinit var uel: UserEntryLogger
@Inject lateinit var alarmSoundServiceHelper: AlarmSoundServiceHelper
@Inject lateinit var notificationStore: NotificationStore
@@ -139,10 +138,10 @@ class MainApp : DaggerApplication() {
}, 10000
)
WorkManager.getInstance(this).enqueueUniquePeriodicWork(
- "KeepAlive",
+ KeepAliveWorker.KA_0,
ExistingPeriodicWorkPolicy.REPLACE,
PeriodicWorkRequest.Builder(KeepAliveWorker::class.java, 15, TimeUnit.MINUTES)
- .setInputData(Data.Builder().putString("schedule", "KeepAlive").build())
+ .setInputData(Data.Builder().putString("schedule", KeepAliveWorker.KA_0).build())
.setInitialDelay(5, TimeUnit.SECONDS)
.build()
)
@@ -155,7 +154,7 @@ class MainApp : DaggerApplication() {
// schedule widget update
refreshWidget = Runnable {
handler.postDelayed(refreshWidget, 60000)
- updateWidget(this)
+ Widget.updateWidget(this)
}
handler.postDelayed(refreshWidget, 60000)
}
@@ -166,7 +165,7 @@ class MainApp : DaggerApplication() {
if (e is UndeliverableException) {
e = e.cause!!
}
- if (e is IOException || e is SocketException) {
+ if (e is IOException) {
// fine, irrelevant network problem or API that throws on cancellation
return@setErrorHandler
}
@@ -184,7 +183,7 @@ class MainApp : DaggerApplication() {
Thread.currentThread().uncaughtExceptionHandler?.uncaughtException(Thread.currentThread(), e)
return@setErrorHandler
}
- aapsLogger.warn(LTag.CORE, "Undeliverable exception received, not sure what to do", e)
+ aapsLogger.warn(LTag.CORE, "Undeliverable exception received, not sure what to do", e.toString())
}
}
diff --git a/app/src/main/java/info/nightscout/androidaps/activities/MyPreferenceFragment.kt b/app/src/main/java/info/nightscout/androidaps/activities/MyPreferenceFragment.kt
index 5f928b2eac..b5c849d9e2 100644
--- a/app/src/main/java/info/nightscout/androidaps/activities/MyPreferenceFragment.kt
+++ b/app/src/main/java/info/nightscout/androidaps/activities/MyPreferenceFragment.kt
@@ -6,7 +6,15 @@ import android.content.SharedPreferences
import android.content.SharedPreferences.OnSharedPreferenceChangeListener
import android.os.Bundle
import androidx.annotation.XmlRes
-import androidx.preference.*
+import androidx.preference.EditTextPreference
+import androidx.preference.ListPreference
+import androidx.preference.Preference
+import androidx.preference.PreferenceCategory
+import androidx.preference.PreferenceFragmentCompat
+import androidx.preference.PreferenceGroup
+import androidx.preference.PreferenceManager
+import androidx.preference.PreferenceScreen
+import androidx.preference.size
import dagger.android.support.AndroidSupportInjection
import info.nightscout.androidaps.R
import info.nightscout.androidaps.danaRKorean.DanaRKoreanPlugin
@@ -20,36 +28,47 @@ import info.nightscout.androidaps.interfaces.Config
import info.nightscout.androidaps.interfaces.PluginBase
import info.nightscout.androidaps.interfaces.Profile
import info.nightscout.androidaps.interfaces.ProfileFunction
+import info.nightscout.androidaps.interfaces.ResourceHelper
import info.nightscout.androidaps.plugin.general.openhumans.OpenHumansUploader
import info.nightscout.androidaps.plugins.aps.loop.LoopPlugin
import info.nightscout.androidaps.plugins.aps.openAPSAMA.OpenAPSAMAPlugin
import info.nightscout.androidaps.plugins.aps.openAPSSMB.OpenAPSSMBPlugin
+import info.nightscout.androidaps.plugins.aps.openAPSSMBDynamicISF.OpenAPSSMBDynamicISFPlugin
import info.nightscout.androidaps.plugins.bus.RxBus
import info.nightscout.androidaps.plugins.configBuilder.PluginStore
import info.nightscout.androidaps.plugins.constraints.safety.SafetyPlugin
-import info.nightscout.androidaps.plugins.general.automation.AutomationPlugin
-import info.nightscout.androidaps.plugins.general.autotune.AutotunePlugin
import info.nightscout.androidaps.plugins.general.maintenance.MaintenancePlugin
import info.nightscout.androidaps.plugins.general.nsclient.NSClientPlugin
import info.nightscout.androidaps.plugins.general.nsclient.data.NSSettingsStatus
-import info.nightscout.androidaps.plugins.general.smsCommunicator.SmsCommunicatorPlugin
import info.nightscout.androidaps.plugins.general.tidepool.TidepoolPlugin
import info.nightscout.androidaps.plugins.general.wear.WearPlugin
-import info.nightscout.androidaps.plugins.general.xdripStatusline.StatusLinePlugin
-import info.nightscout.androidaps.plugins.insulin.InsulinOrefFreePeakPlugin
import info.nightscout.androidaps.plugins.pump.combo.ComboPlugin
+import info.nightscout.androidaps.plugins.pump.eopatch.EopatchPumpPlugin
import info.nightscout.androidaps.plugins.pump.insight.LocalInsightPlugin
import info.nightscout.androidaps.plugins.pump.medtronic.MedtronicPumpPlugin
import info.nightscout.androidaps.plugins.pump.virtual.VirtualPumpPlugin
import info.nightscout.androidaps.plugins.sensitivity.SensitivityAAPSPlugin
import info.nightscout.androidaps.plugins.sensitivity.SensitivityOref1Plugin
import info.nightscout.androidaps.plugins.sensitivity.SensitivityWeightedAveragePlugin
-import info.nightscout.androidaps.plugins.source.*
+import info.nightscout.androidaps.plugins.source.AidexPlugin
+import info.nightscout.androidaps.plugins.source.DexcomPlugin
+import info.nightscout.androidaps.plugins.source.EversensePlugin
+import info.nightscout.androidaps.plugins.source.GlimpPlugin
+import info.nightscout.androidaps.plugins.source.GlunovoPlugin
+import info.nightscout.androidaps.plugins.source.IntelligoPlugin
+import info.nightscout.androidaps.plugins.source.PoctechPlugin
+import info.nightscout.androidaps.plugins.source.TomatoPlugin
import info.nightscout.androidaps.utils.alertDialogs.OKDialog.show
import info.nightscout.androidaps.utils.protection.PasswordCheck
-import info.nightscout.androidaps.utils.protection.ProtectionCheck.ProtectionType.*
-import info.nightscout.androidaps.interfaces.ResourceHelper
-import info.nightscout.androidaps.plugins.aps.openAPSSMBDynamicISF.OpenAPSSMBDynamicISFPlugin
+import info.nightscout.androidaps.utils.protection.ProtectionCheck.ProtectionType.BIOMETRIC
+import info.nightscout.androidaps.utils.protection.ProtectionCheck.ProtectionType.CUSTOM_PASSWORD
+import info.nightscout.androidaps.utils.protection.ProtectionCheck.ProtectionType.CUSTOM_PIN
+import info.nightscout.androidaps.utils.protection.ProtectionCheck.ProtectionType.NONE
+import info.nightscout.automation.AutomationPlugin
+import info.nightscout.plugins.general.autotune.AutotunePlugin
+import info.nightscout.plugins.general.smsCommunicator.SmsCommunicatorPlugin
+import info.nightscout.plugins.general.xdripStatusline.StatusLinePlugin
+import info.nightscout.plugins.insulin.InsulinOrefFreePeakPlugin
import info.nightscout.shared.SafeParse
import info.nightscout.shared.sharedPreferences.SP
import javax.inject.Inject
@@ -99,6 +118,7 @@ class MyPreferenceFragment : PreferenceFragmentCompat(), OnSharedPreferenceChang
@Inject lateinit var virtualPumpPlugin: VirtualPumpPlugin
@Inject lateinit var wearPlugin: WearPlugin
@Inject lateinit var maintenancePlugin: MaintenancePlugin
+ @Inject lateinit var eopatchPumpPlugin: EopatchPumpPlugin
@Inject lateinit var passwordCheck: PasswordCheck
@Inject lateinit var nsSettingStatus: NSSettingsStatus
@@ -187,6 +207,7 @@ class MyPreferenceFragment : PreferenceFragmentCompat(), OnSharedPreferenceChang
addPreferencesFromResourceIfEnabled(comboPlugin, rootKey, config.PUMPDRIVERS)
addPreferencesFromResourceIfEnabled(medtronicPumpPlugin, rootKey, config.PUMPDRIVERS)
addPreferencesFromResourceIfEnabled(diaconnG8Plugin, rootKey, config.PUMPDRIVERS)
+ addPreferencesFromResourceIfEnabled(eopatchPumpPlugin, rootKey, config.PUMPDRIVERS)
addPreferencesFromResource(R.xml.pref_pump, rootKey, config.PUMPDRIVERS)
addPreferencesFromResourceIfEnabled(virtualPumpPlugin, rootKey)
addPreferencesFromResourceIfEnabled(insulinOrefFreePeakPlugin, rootKey)
@@ -314,9 +335,9 @@ class MyPreferenceFragment : PreferenceFragmentCompat(), OnSharedPreferenceChang
p.initialExpandedChildrenCount = Int.MAX_VALUE
}
} else {
- visible = visible || p.key?.contains(filter, true) == true
- visible = visible || p.title?.contains(filter, true) == true
- visible = visible || p.summary?.contains(filter, true) == true
+ visible = visible || p.key?.contains(filter, true) == true
+ visible = visible || p.title?.contains(filter, true) == true
+ visible = visible || p.summary?.contains(filter, true) == true
}
p.isVisible = visible
@@ -384,7 +405,7 @@ class MyPreferenceFragment : PreferenceFragmentCompat(), OnSharedPreferenceChang
} else {
if (pref.key.contains("pin")) {
pref.summary = rh.gs(R.string.pin_not_set)
- }else {
+ } else {
pref.summary = rh.gs(R.string.password_not_set)
}
}
diff --git a/app/src/main/java/info/nightscout/androidaps/activities/PreferencesActivity.kt b/app/src/main/java/info/nightscout/androidaps/activities/PreferencesActivity.kt
index 88cafc15f3..076c441126 100644
--- a/app/src/main/java/info/nightscout/androidaps/activities/PreferencesActivity.kt
+++ b/app/src/main/java/info/nightscout/androidaps/activities/PreferencesActivity.kt
@@ -72,6 +72,7 @@ class PreferencesActivity : NoSplashAppCompatActivity(), PreferenceFragmentCompa
override fun onOptionsItemSelected(item: MenuItem): Boolean =
when (item.itemId) {
android.R.id.home -> {
+ @Suppress("DEPRECATION")
onBackPressed()
true
}
diff --git a/app/src/main/java/info/nightscout/androidaps/activities/ProfileHelperActivity.kt b/app/src/main/java/info/nightscout/androidaps/activities/ProfileHelperActivity.kt
index e3c21e15ad..1f9af96bf7 100644
--- a/app/src/main/java/info/nightscout/androidaps/activities/ProfileHelperActivity.kt
+++ b/app/src/main/java/info/nightscout/androidaps/activities/ProfileHelperActivity.kt
@@ -18,15 +18,20 @@ import info.nightscout.androidaps.dialogs.ProfileViewerDialog
import info.nightscout.androidaps.extensions.toVisibility
import info.nightscout.androidaps.interfaces.ActivePlugin
import info.nightscout.androidaps.interfaces.ProfileFunction
-import info.nightscout.androidaps.plugins.profile.local.LocalProfilePlugin
-import info.nightscout.androidaps.plugins.profile.local.events.EventLocalProfileChanged
+import info.nightscout.plugins.profile.ProfilePlugin
+import info.nightscout.plugins.profile.events.EventLocalProfileChanged
import info.nightscout.androidaps.utils.DateUtil
+import info.nightscout.androidaps.utils.FabricPrivacy
import info.nightscout.androidaps.utils.T
import info.nightscout.androidaps.utils.ToastUtils
import info.nightscout.androidaps.utils.alertDialogs.OKDialog
-import info.nightscout.androidaps.utils.defaultProfile.DefaultProfile
-import info.nightscout.androidaps.utils.defaultProfile.DefaultProfileDPV
-import info.nightscout.androidaps.utils.stats.TddCalculator
+import info.nightscout.ui.defaultProfile.DefaultProfile
+import info.nightscout.ui.defaultProfile.DefaultProfileDPV
+import info.nightscout.androidaps.utils.rx.AapsSchedulers
+import info.nightscout.androidaps.interfaces.stats.TddCalculator
+import io.reactivex.rxjava3.core.Single
+import io.reactivex.rxjava3.disposables.CompositeDisposable
+import io.reactivex.rxjava3.kotlin.plusAssign
import java.text.DecimalFormat
import javax.inject.Inject
@@ -36,10 +41,12 @@ class ProfileHelperActivity : NoSplashAppCompatActivity() {
@Inject lateinit var profileFunction: ProfileFunction
@Inject lateinit var defaultProfile: DefaultProfile
@Inject lateinit var defaultProfileDPV: DefaultProfileDPV
- @Inject lateinit var localProfilePlugin: LocalProfilePlugin
+ @Inject lateinit var profilePlugin: ProfilePlugin
@Inject lateinit var dateUtil: DateUtil
@Inject lateinit var activePlugin: ActivePlugin
@Inject lateinit var repository: AppRepository
+ @Inject lateinit var aapsSchedulers: AapsSchedulers
+ @Inject lateinit var fabricPrivacy: FabricPrivacy
enum class ProfileType {
MOTOL_DEFAULT,
@@ -64,6 +71,7 @@ class ProfileHelperActivity : NoSplashAppCompatActivity() {
private val profileSwitchUsed = arrayOf(0, 0)
private lateinit var binding: ActivityProfilehelperBinding
+ private val disposable = CompositeDisposable()
@SuppressLint("SetTextI18n")
override fun onCreate(savedInstanceState: Bundle?) {
@@ -127,8 +135,8 @@ class ProfileHelperActivity : NoSplashAppCompatActivity() {
else defaultProfileDPV.profile(age, tdd, pct / 100.0, profileFunction.getUnits())
profile?.let {
OKDialog.showConfirmation(this, rh.gs(R.string.careportal_profileswitch), rh.gs(R.string.copytolocalprofile), Runnable {
- localProfilePlugin.addProfile(
- localProfilePlugin.copyFrom(
+ profilePlugin.addProfile(
+ profilePlugin.copyFrom(
it, "DefaultProfile " +
dateUtil.dateAndTimeAndSecondsString(dateUtil.now())
.replace(".", "/")
@@ -158,13 +166,13 @@ class ProfileHelperActivity : NoSplashAppCompatActivity() {
binding.basalPctFromTdd.setParams(32.0, 32.0, 37.0, 1.0, DecimalFormat("0"), false, null)
binding.tdds.addView(TextView(this).apply { text = rh.gs(R.string.tdd) + ": " + rh.gs(R.string.calculation_in_progress) })
- Thread {
- val tdds = tddCalculator.stats(this)
- runOnUiThread {
- binding.tdds.removeAllViews()
- binding.tdds.addView(tdds)
- }
- }.start()
+ disposable += Single.fromCallable { tddCalculator.stats(this) }
+ .subscribeOn(aapsSchedulers.io)
+ .observeOn(aapsSchedulers.main)
+ .subscribe({
+ binding.tdds.removeAllViews()
+ binding.tdds.addView(it)
+ }, fabricPrivacy::logException)
// Current profile
binding.currentProfileText.text = profileFunction.getProfileName()
@@ -175,25 +183,25 @@ class ProfileHelperActivity : NoSplashAppCompatActivity() {
for (i in 0..1) {
if (typeSelected[i] == ProfileType.MOTOL_DEFAULT) {
if (ageUsed[i] < 1 || ageUsed[i] > 18) {
- ToastUtils.warnToast(this, R.string.invalidage)
+ ToastUtils.warnToast(this, R.string.invalid_age)
return@setOnClickListener
}
if ((weightUsed[i] < 5 || weightUsed[i] > 150) && tddUsed[i] == 0.0) {
- ToastUtils.warnToast(this, R.string.invalidweight)
+ ToastUtils.warnToast(this, R.string.invalid_weight)
return@setOnClickListener
}
if ((tddUsed[i] < 5 || tddUsed[i] > 150) && weightUsed[i] == 0.0) {
- ToastUtils.warnToast(this, R.string.invalidweight)
+ ToastUtils.warnToast(this, R.string.invalid_weight)
return@setOnClickListener
}
}
if (typeSelected[i] == ProfileType.DPV_DEFAULT) {
if (ageUsed[i] < 1 || ageUsed[i] > 18) {
- ToastUtils.warnToast(this, R.string.invalidage)
+ ToastUtils.warnToast(this, R.string.invalid_age)
return@setOnClickListener
}
if (tddUsed[i] < 5 || tddUsed[i] > 150) {
- ToastUtils.warnToast(this, R.string.invalidweight)
+ ToastUtils.warnToast(this, R.string.invalid_weight)
return@setOnClickListener
}
if ((pctUsed[i] < 32 || pctUsed[i] > 37)) {
@@ -303,4 +311,8 @@ class ProfileHelperActivity : NoSplashAppCompatActivity() {
}
}
+ override fun onPause() {
+ super.onPause()
+ disposable.clear()
+ }
}
diff --git a/app/src/main/java/info/nightscout/androidaps/activities/StatsActivity.kt b/app/src/main/java/info/nightscout/androidaps/activities/StatsActivity.kt
deleted file mode 100644
index 307f27afd6..0000000000
--- a/app/src/main/java/info/nightscout/androidaps/activities/StatsActivity.kt
+++ /dev/null
@@ -1,76 +0,0 @@
-package info.nightscout.androidaps.activities
-
-import android.annotation.SuppressLint
-import android.os.Bundle
-import android.widget.TextView
-import info.nightscout.androidaps.R
-import info.nightscout.androidaps.database.entities.UserEntry.Action
-import info.nightscout.androidaps.database.entities.UserEntry.Sources
-import info.nightscout.androidaps.databinding.ActivityStatsBinding
-import info.nightscout.androidaps.logging.UserEntryLogger
-import info.nightscout.androidaps.utils.ActivityMonitor
-import info.nightscout.androidaps.utils.alertDialogs.OKDialog
-import info.nightscout.androidaps.utils.stats.DexcomTirCalculator
-import info.nightscout.androidaps.utils.stats.TddCalculator
-import info.nightscout.androidaps.utils.stats.TirCalculator
-import javax.inject.Inject
-
-class StatsActivity : NoSplashAppCompatActivity() {
-
- @Inject lateinit var tddCalculator: TddCalculator
- @Inject lateinit var tirCalculator: TirCalculator
- @Inject lateinit var dexcomTirCalculator: DexcomTirCalculator
- @Inject lateinit var activityMonitor: ActivityMonitor
- @Inject lateinit var uel: UserEntryLogger
-
- private lateinit var binding: ActivityStatsBinding
-
- @SuppressLint("SetTextI18n")
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- binding = ActivityStatsBinding.inflate(layoutInflater)
- setContentView(binding.root)
-
- binding.tdds.addView(TextView(this).apply { text = getString(R.string.tdd) + ": " + rh.gs(R.string.calculation_in_progress) })
- binding.tir.addView(TextView(this).apply { text = getString(R.string.tir) + ": " + rh.gs(R.string.calculation_in_progress) })
- binding.activity.addView(TextView(this).apply { text = getString(R.string.activitymonitor) + ": " + rh.gs(R.string.calculation_in_progress) })
-
- Thread {
- val tdds = tddCalculator.stats(this)
- runOnUiThread {
- binding.tdds.removeAllViews()
- binding.tdds.addView(tdds)
- }
- }.start()
- Thread {
- val tir = tirCalculator.stats(this)
- runOnUiThread {
- binding.tir.removeAllViews()
- binding.tir.addView(tir)
- }
- }.start()
- Thread {
- val dexcomTir = dexcomTirCalculator.stats(this)
- runOnUiThread {
- binding.dexcomTir.removeAllViews()
- binding.dexcomTir.addView(dexcomTir)
- }
- }.start()
- Thread {
- val activity = activityMonitor.stats(this)
- runOnUiThread {
- binding.activity.removeAllViews()
- binding.activity.addView(activity)
- }
- }.start()
-
- binding.ok.setOnClickListener { finish() }
- binding.reset.setOnClickListener {
- OKDialog.showConfirmation(this, rh.gs(R.string.doyouwantresetstats)) {
- uel.log(Action.STAT_RESET, Sources.Stats)
- activityMonitor.reset()
- recreate()
- }
- }
- }
-}
diff --git a/app/src/main/java/info/nightscout/androidaps/activities/fragments/HistoryBrowserData.kt b/app/src/main/java/info/nightscout/androidaps/activities/fragments/HistoryBrowserData.kt
index 2fba78b07c..03cc11b01e 100644
--- a/app/src/main/java/info/nightscout/androidaps/activities/fragments/HistoryBrowserData.kt
+++ b/app/src/main/java/info/nightscout/androidaps/activities/fragments/HistoryBrowserData.kt
@@ -49,8 +49,7 @@ class HistoryBrowserData @Inject constructor(
activePlugin,
defaultValueHelper,
profileFunction,
- repository,
- fabricPrivacy
+ repository
)
iobCobCalculator =
IobCobCalculatorPlugin(
diff --git a/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsBolusCarbsFragment.kt b/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsBolusCarbsFragment.kt
index bbeddf2cac..c8a95d287a 100644
--- a/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsBolusCarbsFragment.kt
+++ b/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsBolusCarbsFragment.kt
@@ -35,7 +35,7 @@ import info.nightscout.androidaps.interfaces.ProfileFunction
import info.nightscout.androidaps.interfaces.ResourceHelper
import info.nightscout.androidaps.logging.UserEntryLogger
import info.nightscout.androidaps.plugins.bus.RxBus
-import info.nightscout.androidaps.plugins.general.nsclient.events.EventNSClientRestart
+import info.nightscout.plugins.general.nsclient.events.EventNSClientRestart
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.events.EventNewHistoryData
import info.nightscout.androidaps.utils.ActionModeHelper
import info.nightscout.androidaps.utils.DateUtil
@@ -271,7 +271,7 @@ class TreatmentsBolusCarbsFragment : DaggerFragment(), MenuProvider {
holder.binding.calculation.tag = ml
- var notes = ml.carbs?.notes ?: ml.bolus?.notes ?: ""
+ val notes = ml.carbs?.notes ?: ml.bolus?.notes ?: ""
holder.binding.notes.text = notes
holder.binding.notes.visibility = if (notes != "") View.VISIBLE else View.GONE
}
diff --git a/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsCareportalFragment.kt b/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsCareportalFragment.kt
index 7803ee4359..37c46f4a26 100644
--- a/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsCareportalFragment.kt
+++ b/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsCareportalFragment.kt
@@ -26,7 +26,7 @@ import info.nightscout.androidaps.interfaces.BuildHelper
import info.nightscout.androidaps.interfaces.ResourceHelper
import info.nightscout.androidaps.logging.UserEntryLogger
import info.nightscout.androidaps.plugins.bus.RxBus
-import info.nightscout.androidaps.plugins.general.nsclient.events.EventNSClientRestart
+import info.nightscout.plugins.general.nsclient.events.EventNSClientRestart
import info.nightscout.androidaps.utils.*
import info.nightscout.androidaps.utils.alertDialogs.OKDialog
import info.nightscout.androidaps.utils.rx.AapsSchedulers
diff --git a/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsProfileSwitchFragment.kt b/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsProfileSwitchFragment.kt
index b845bbc1de..7dd9a23734 100644
--- a/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsProfileSwitchFragment.kt
+++ b/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsProfileSwitchFragment.kt
@@ -28,10 +28,10 @@ import info.nightscout.androidaps.extensions.getCustomizedName
import info.nightscout.androidaps.extensions.toVisibility
import info.nightscout.androidaps.logging.UserEntryLogger
import info.nightscout.androidaps.plugins.bus.RxBus
-import info.nightscout.androidaps.plugins.general.nsclient.events.EventNSClientRestart
+import info.nightscout.plugins.general.nsclient.events.EventNSClientRestart
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.events.EventNewHistoryData
-import info.nightscout.androidaps.plugins.profile.local.LocalProfilePlugin
-import info.nightscout.androidaps.plugins.profile.local.events.EventLocalProfileChanged
+import info.nightscout.plugins.profile.ProfilePlugin
+import info.nightscout.plugins.profile.events.EventLocalProfileChanged
import info.nightscout.androidaps.utils.ActionModeHelper
import info.nightscout.androidaps.utils.DateUtil
import info.nightscout.androidaps.utils.FabricPrivacy
@@ -55,7 +55,7 @@ class TreatmentsProfileSwitchFragment : DaggerFragment(), MenuProvider {
@Inject lateinit var rxBus: RxBus
@Inject lateinit var sp: SP
@Inject lateinit var aapsLogger: AAPSLogger
- @Inject lateinit var localProfilePlugin: LocalProfilePlugin
+ @Inject lateinit var profilePlugin: ProfilePlugin
@Inject lateinit var rh: ResourceHelper
@Inject lateinit var fabricPrivacy: FabricPrivacy
@Inject lateinit var dateUtil: DateUtil
@@ -241,8 +241,8 @@ class TreatmentsProfileSwitchFragment : DaggerFragment(), MenuProvider {
ValueWithUnit.SimpleString(profileSwitch.profileName)
)
val nonCustomized = profileSealed.convertToNonCustomizedProfile(dateUtil)
- localProfilePlugin.addProfile(
- localProfilePlugin.copyFrom(
+ profilePlugin.addProfile(
+ profilePlugin.copyFrom(
nonCustomized,
profileSwitch.getCustomizedName() + " " + dateUtil.dateAndTimeString(profileSwitch.timestamp).replace(".", "_")
)
diff --git a/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsTempTargetFragment.kt b/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsTempTargetFragment.kt
index 840dd7b1b4..74b2d5ba0e 100644
--- a/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsTempTargetFragment.kt
+++ b/app/src/main/java/info/nightscout/androidaps/activities/fragments/TreatmentsTempTargetFragment.kt
@@ -34,7 +34,7 @@ import info.nightscout.androidaps.interfaces.ProfileFunction
import info.nightscout.androidaps.interfaces.ResourceHelper
import info.nightscout.androidaps.logging.UserEntryLogger
import info.nightscout.androidaps.plugins.bus.RxBus
-import info.nightscout.androidaps.plugins.general.nsclient.events.EventNSClientRestart
+import info.nightscout.plugins.general.nsclient.events.EventNSClientRestart
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.events.EventNewHistoryData
import info.nightscout.androidaps.utils.*
import info.nightscout.androidaps.utils.alertDialogs.OKDialog
diff --git a/app/src/main/java/info/nightscout/androidaps/db/CompatDBHelper.kt b/app/src/main/java/info/nightscout/androidaps/db/CompatDBHelper.kt
index 7d223be028..684b1f74ec 100644
--- a/app/src/main/java/info/nightscout/androidaps/db/CompatDBHelper.kt
+++ b/app/src/main/java/info/nightscout/androidaps/db/CompatDBHelper.kt
@@ -1,5 +1,6 @@
package info.nightscout.androidaps.db
+import android.content.Context
import info.nightscout.androidaps.database.AppRepository
import info.nightscout.androidaps.database.entities.*
import info.nightscout.androidaps.events.*
@@ -7,6 +8,7 @@ import info.nightscout.shared.logging.AAPSLogger
import info.nightscout.shared.logging.LTag
import info.nightscout.androidaps.plugins.bus.RxBus
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.events.EventNewHistoryData
+import info.nightscout.ui.widget.Widget
import io.reactivex.rxjava3.disposables.Disposable
import javax.inject.Inject
import javax.inject.Singleton
@@ -15,13 +17,15 @@ import javax.inject.Singleton
class CompatDBHelper @Inject constructor(
val aapsLogger: AAPSLogger,
val repository: AppRepository,
- val rxBus: RxBus
+ val rxBus: RxBus,
+ val context: Context
) {
fun dbChangeDisposable(): Disposable = repository
.changeObservable()
.doOnSubscribe {
rxBus.send(EventNewBG(null))
+ Widget.updateWidget(context)
}
.subscribe {
/**
@@ -34,6 +38,7 @@ class CompatDBHelper @Inject constructor(
it.filterIsInstance().maxByOrNull { gv -> gv.timestamp }?.let { gv ->
aapsLogger.debug(LTag.DATABASE, "Firing EventNewBg $gv")
rxBus.send(EventNewBG(gv))
+ Widget.updateWidget(context)
newestGlucoseValue = gv
}
it.filterIsInstance().minOfOrNull { gv -> gv.timestamp }?.let { timestamp ->
diff --git a/app/src/main/java/info/nightscout/androidaps/di/ActivitiesModule.kt b/app/src/main/java/info/nightscout/androidaps/di/ActivitiesModule.kt
index 03e35f853f..bb39265155 100644
--- a/app/src/main/java/info/nightscout/androidaps/di/ActivitiesModule.kt
+++ b/app/src/main/java/info/nightscout/androidaps/di/ActivitiesModule.kt
@@ -3,11 +3,14 @@ package info.nightscout.androidaps.di
import dagger.Module
import dagger.android.ContributesAndroidInjector
import info.nightscout.androidaps.MainActivity
-import info.nightscout.androidaps.activities.*
import info.nightscout.androidaps.activities.HistoryBrowseActivity
+import info.nightscout.androidaps.activities.PreferencesActivity
+import info.nightscout.androidaps.activities.ProfileHelperActivity
+import info.nightscout.androidaps.activities.SingleFragmentActivity
+import info.nightscout.androidaps.activities.TreatmentsActivity
import info.nightscout.androidaps.plugins.general.maintenance.activities.LogSettingActivity
import info.nightscout.androidaps.plugins.general.overview.activities.QuickWizardListActivity
-import info.nightscout.androidaps.plugins.general.smsCommunicator.activities.SmsCommunicatorOtpActivity
+import info.nightscout.androidaps.plugins.source.activities.RequestDexcomPermissionActivity
import info.nightscout.androidaps.setupwizard.SetupWizardActivity
@Module
@@ -23,9 +26,6 @@ abstract class ActivitiesModule {
@ContributesAndroidInjector abstract fun contributesRequestDexcomPermissionActivity(): RequestDexcomPermissionActivity
@ContributesAndroidInjector abstract fun contributesSetupWizardActivity(): SetupWizardActivity
@ContributesAndroidInjector abstract fun contributesSingleFragmentActivity(): SingleFragmentActivity
- @ContributesAndroidInjector abstract fun contributesSmsCommunicatorOtpActivity(): SmsCommunicatorOtpActivity
- @ContributesAndroidInjector abstract fun contributesStatsActivity(): StatsActivity
- @ContributesAndroidInjector abstract fun contributesSurveyActivity(): SurveyActivity
@ContributesAndroidInjector abstract fun contributesDefaultProfileActivity(): ProfileHelperActivity
}
\ No newline at end of file
diff --git a/app/src/main/java/info/nightscout/androidaps/di/AppComponent.kt b/app/src/main/java/info/nightscout/androidaps/di/AppComponent.kt
index fb5bc21397..406286242c 100644
--- a/app/src/main/java/info/nightscout/androidaps/di/AppComponent.kt
+++ b/app/src/main/java/info/nightscout/androidaps/di/AppComponent.kt
@@ -5,67 +5,76 @@ import dagger.Component
import dagger.android.AndroidInjectionModule
import dagger.android.AndroidInjector
import info.nightscout.androidaps.MainApp
-import info.nightscout.androidaps.automation.di.AutomationModule
import info.nightscout.androidaps.combo.di.ComboModule
import info.nightscout.androidaps.dana.di.DanaHistoryModule
import info.nightscout.androidaps.dana.di.DanaModule
import info.nightscout.androidaps.danar.di.DanaRModule
import info.nightscout.androidaps.danars.di.DanaRSModule
import info.nightscout.androidaps.database.DatabaseModule
-import info.nightscout.androidaps.dependencyInjection.AutotuneModule
import info.nightscout.androidaps.diaconn.di.DiaconnG8Module
import info.nightscout.androidaps.insight.di.InsightDatabaseModule
import info.nightscout.androidaps.insight.di.InsightModule
import info.nightscout.androidaps.plugin.general.openhumans.di.OpenHumansModule
import info.nightscout.androidaps.plugins.pump.common.di.PumpCommonModule
import info.nightscout.androidaps.plugins.pump.common.di.RileyLinkModule
+import info.nightscout.androidaps.plugins.pump.eopatch.dagger.EopatchModule
import info.nightscout.androidaps.plugins.pump.medtronic.di.MedtronicModule
import info.nightscout.androidaps.plugins.pump.omnipod.dash.di.OmnipodDashModule
import info.nightscout.androidaps.plugins.pump.omnipod.eros.di.OmnipodErosModule
+import info.nightscout.automation.di.AutomationModule
+import info.nightscout.implementation.di.ImplementationModule
+import info.nightscout.plugins.di.PluginsModule
import info.nightscout.shared.di.SharedModule
+import info.nightscout.ui.di.UiModule
import javax.inject.Singleton
@Singleton
@Component(
modules = [
AndroidInjectionModule::class,
- DatabaseModule::class,
- PluginsModule::class,
+ AppModule::class,
+ PluginsListModule::class,
SkinsModule::class,
ActivitiesModule::class,
FragmentsModule::class,
- AppModule::class,
ReceiversModule::class,
ServicesModule::class,
- AutomationModule::class,
- AutotuneModule::class,
- CommandQueueModule::class,
ObjectivesModule::class,
WizardModule::class,
- PumpCommonModule::class,
- RileyLinkModule::class,
- MedtronicModule::class,
- OmnipodDashModule::class,
- OmnipodErosModule::class,
APSModule::class,
WorkflowModule::class,
PreferencesModule::class,
OverviewModule::class,
DataClassesModule::class,
- SMSModule::class,
- UIModule::class,
+ WorkersModule::class,
+ UiModule::class,
+
+ // Gradle modules
+ AutomationModule::class,
CoreModule::class,
- DanaModule::class,
+ DatabaseModule::class,
+ ImplementationModule::class,
+ PluginsModule::class,
+ SharedModule::class,
+ OpenHumansModule::class,
+ UIModule::class,
+
+ // pumps
+ ComboModule::class,
DanaHistoryModule::class,
+ DanaModule::class,
DanaRModule::class,
DanaRSModule::class,
- ComboModule::class,
+ DiaconnG8Module::class,
+ EopatchModule::class,
InsightModule::class,
InsightDatabaseModule::class,
- WorkersModule::class,
- DiaconnG8Module::class,
- OpenHumansModule::class,
- SharedModule::class
+ MedtronicModule::class,
+ OmnipodDashModule::class,
+ OmnipodErosModule::class,
+ PumpCommonModule::class,
+ RileyLinkModule::class,
+
]
)
interface AppComponent : AndroidInjector {
diff --git a/app/src/main/java/info/nightscout/androidaps/di/AppModule.kt b/app/src/main/java/info/nightscout/androidaps/di/AppModule.kt
index 545c497c69..d4abd543c6 100644
--- a/app/src/main/java/info/nightscout/androidaps/di/AppModule.kt
+++ b/app/src/main/java/info/nightscout/androidaps/di/AppModule.kt
@@ -8,55 +8,97 @@ import dagger.Provides
import dagger.android.HasAndroidInjector
import info.nightscout.androidaps.MainApp
import info.nightscout.androidaps.database.AppRepository
-import info.nightscout.androidaps.interfaces.*
-import info.nightscout.shared.logging.AAPSLogger
+import info.nightscout.androidaps.implementations.ActivityNamesImpl
+import info.nightscout.androidaps.interfaces.ActivePlugin
+import info.nightscout.androidaps.interfaces.ActivityNames
+import info.nightscout.androidaps.interfaces.AndroidPermission
+import info.nightscout.androidaps.interfaces.Autotune
+import info.nightscout.androidaps.interfaces.BolusTimer
+import info.nightscout.androidaps.interfaces.BuildHelper
+import info.nightscout.androidaps.interfaces.CarbTimer
+import info.nightscout.androidaps.interfaces.CommandQueue
+import info.nightscout.androidaps.interfaces.Config
+import info.nightscout.androidaps.interfaces.ConfigBuilder
+import info.nightscout.androidaps.interfaces.Constraints
+import info.nightscout.androidaps.interfaces.DataSyncSelector
+import info.nightscout.androidaps.interfaces.IconsProvider
+import info.nightscout.androidaps.interfaces.ImportExportPrefs
+import info.nightscout.androidaps.interfaces.IobCobCalculator
+import info.nightscout.androidaps.interfaces.LocalAlertUtils
+import info.nightscout.androidaps.interfaces.Loop
+import info.nightscout.androidaps.interfaces.NotificationHolder
+import info.nightscout.androidaps.interfaces.PluginBase
+import info.nightscout.androidaps.interfaces.ProfileFunction
+import info.nightscout.androidaps.interfaces.PumpSync
+import info.nightscout.androidaps.interfaces.ResourceHelper
+import info.nightscout.androidaps.interfaces.SmsCommunicator
+import info.nightscout.androidaps.interfaces.TrendCalculator
+import info.nightscout.androidaps.interfaces.XDripBroadcast
+import info.nightscout.androidaps.interfaces.stats.DexcomTirCalculator
+import info.nightscout.androidaps.interfaces.stats.TddCalculator
+import info.nightscout.androidaps.interfaces.stats.TirCalculator
import info.nightscout.androidaps.plugins.aps.loop.LoopPlugin
import info.nightscout.androidaps.plugins.bus.RxBus
import info.nightscout.androidaps.plugins.configBuilder.ConfigBuilderPlugin
import info.nightscout.androidaps.plugins.configBuilder.PluginStore
-import info.nightscout.androidaps.plugins.configBuilder.ProfileFunctionImplementation
-import info.nightscout.androidaps.plugins.general.autotune.AutotunePlugin
+import info.nightscout.androidaps.plugins.configBuilder.ProfileFunctionImpl
import info.nightscout.androidaps.plugins.general.maintenance.ImportExportPrefsImpl
import info.nightscout.androidaps.plugins.general.maintenance.PrefFileListProvider
import info.nightscout.androidaps.plugins.general.nsclient.DataSyncSelectorImplementation
import info.nightscout.androidaps.plugins.general.nsclient.data.DeviceStatusData
-import info.nightscout.androidaps.plugins.general.smsCommunicator.SmsCommunicatorPlugin
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.IobCobCalculatorPlugin
import info.nightscout.androidaps.plugins.pump.PumpSyncImplementation
-import info.nightscout.androidaps.queue.CommandQueueImplementation
import info.nightscout.androidaps.utils.DateUtil
import info.nightscout.androidaps.utils.FabricPrivacy
import info.nightscout.androidaps.utils.HardLimits
import info.nightscout.androidaps.utils.androidNotification.NotificationHolderImpl
-import info.nightscout.androidaps.interfaces.BuildHelper
import info.nightscout.androidaps.utils.buildHelper.BuildHelperImpl
import info.nightscout.androidaps.utils.buildHelper.ConfigImpl
import info.nightscout.androidaps.utils.resources.IconsProviderImplementation
-import info.nightscout.androidaps.interfaces.ResourceHelper
import info.nightscout.androidaps.utils.rx.AapsSchedulers
import info.nightscout.androidaps.utils.rx.DefaultAapsSchedulers
import info.nightscout.androidaps.utils.storage.FileStorage
import info.nightscout.androidaps.utils.storage.Storage
+import info.nightscout.implementation.AndroidPermissionImpl
+import info.nightscout.implementation.BolusTimerImpl
+import info.nightscout.implementation.CarbTimerImpl
+import info.nightscout.implementation.LocalAlertUtilsImpl
+import info.nightscout.implementation.TrendCalculatorImpl
+import info.nightscout.implementation.XDripBroadcastImpl
+import info.nightscout.implementation.constraints.ConstraintsImpl
+import info.nightscout.implementation.queue.CommandQueueImplementation
+import info.nightscout.implementation.stats.DexcomTirCalculatorImpl
+import info.nightscout.implementation.stats.TddCalculatorImpl
+import info.nightscout.implementation.stats.TirCalculatorImpl
+import info.nightscout.plugins.general.autotune.AutotunePlugin
+import info.nightscout.plugins.general.smsCommunicator.SmsCommunicatorPlugin
+import info.nightscout.shared.logging.AAPSLogger
import info.nightscout.shared.sharedPreferences.SP
import javax.inject.Singleton
@Suppress("unused")
-@Module(includes = [
- AppModule.AppBindings::class
-])
+@Module(
+ includes = [
+ AppModule.AppBindings::class
+ ]
+)
open class AppModule {
@Provides
- fun providesPlugins(config: Config,
- @PluginsModule.AllConfigs allConfigs: Map<@JvmSuppressWildcards Int, @JvmSuppressWildcards PluginBase>,
- @PluginsModule.PumpDriver pumpDrivers: Lazy