Commit graph

14331 commits

Author SHA1 Message Date
Carlos Rafael Giani 61519e43f2 combov2: Disable internal Pump.connect() connection attempt limiter
QueueThread already has a timeout; the limiter is redundant.

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 23:05:24 +01:00
Carlos Rafael Giani 90480ab1d9 comboctl-main: Add more argument checks to Pump.connect()
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 23:04:30 +01:00
Carlos Rafael Giani 605fe04d74 comboctl-main: Check for unchanging screen type in navigateToRTScreen()
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 21:58:50 +01:00
Carlos Rafael Giani 5aeb401cc0 combov2: Autodetect reservoir and battery changes and insert them as events
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 21:04:53 +01:00
Carlos Rafael Giani 8bef914eac combov2: Store battery and reservoir levels as plain properties
This fixes https://github.com/dv1/AndroidAPS/issues/2

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 19:55:04 +01:00
Carlos Rafael Giani 2bde0f154d comboctl-main: Add and fix unit tests
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 18:59:21 +01:00
Carlos Rafael Giani 96c8145dc3 comboctl-main: During corrective short button presses check screens
After a long button press, short button presses may be necessary to
fix "overshoots". An alert screen may appear during those short button
presses, so look at the screens to make sure alerts are not missed.

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 18:59:17 +01:00
Carlos Rafael Giani 8b2666ff74 comboctl-main: Only receive frames if long RT button press was skipped
The code in adjustQuantityOnScreen() needs an current quantity. This is
determined during the long button press. If no such long button press
happens, get the quantity by explicitly receiving parsed frames. But
don't read those parsed frames if a long button press happened; this
is redundant and just slows down the function.

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 18:59:12 +01:00
Carlos Rafael Giani 03a32f09cf comboctl-main: Catch getParsedDisplayFrame() exceptions and rethrow later
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 18:59:08 +01:00
Carlos Rafael Giani 8d6171db49 comboctl-parser: Support main screens with ext/multiwave and TBR symbols
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 18:58:51 +01:00
Carlos Rafael Giani e9294c59a0 comboctl-parser: Parse remaining duration in TBR percentage screen
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-20 18:58:47 +01:00
Carlos Rafael Giani cc26eb8ed8 combov2: Also limit TBR percentage when AAPS sets absolute TBR
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-19 23:47:49 +01:00
Carlos Rafael Giani d50feec302 comboctl-main: Correctly handle alerts after bolus was delivered
In particular, if a bolus brings the reservoir level below the low
threshold, a W1 warning shows up on the pump itself during bolus delivery.
Once delivery is done, the W1 shows up in the RT mode as well. Bolus
delivery is special in that the deliverBolus() function has to manually
switch back to RT mode to get the reservoir level post-bolus to update
the reservoirLevel value. When that is done, the aforementioned alert
screen can show up. Add code to handle alert screen handling to that
special post-bolus check.

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-19 13:56:01 +01:00
Carlos Rafael Giani 20d4a0c692 comboctl-main: Fix computeShortRTButtonPress() cyclic quantity bug
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-19 11:22:10 +01:00
Carlos Rafael Giani 3f265c855c combov2: Fix last bolus field in combov2 UI fragment
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-11 18:05:31 +01:00
Carlos Rafael Giani 03d226e725 combov2: Show dedicated message when hitting unexpected TBR % limit
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-10 23:41:45 +01:00
Carlos Rafael Giani ced93e4a53 comboctl-main: Check if RT quantity adjustment hits an unexpected limit
This is important for example if the Combo is not properly configured
and the user tries to set a TBR percentage beyond the configured limit.
The RT UI will then clamp the percentage to that limit, and the quantity
won't increase anymore. Without this new check, this causes the code
to be stuck in an endless loop.

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-10 19:21:02 +01:00
Carlos Rafael Giani c3c894cccb comboctl-main: Rework longPressRTButtonUntil() implementation
The new implementation overshoots less often, runs generally faster,
and correctly forwards exceptions thrown by the checkScreen callback.

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-10 19:21:02 +01:00
Carlos Rafael Giani c535e96ec7 combov2: Reset states associated with pump when unpairing
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 16:30:34 +01:00
Carlos Rafael Giani cdfb197c54 combov2: Minor cleanup to reduce some code smell
* Kotlin code convention specifies that ignored exceptions must be named
  "_", not "ignored."
* Add explanation about empty overridden method implementations.

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 16:30:06 +01:00
Carlos Rafael Giani 8fda1ab0b8 combov2: More adjustments to pairing activity text
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 14:40:08 +01:00
Carlos Rafael Giani c996c39b54 combov2: Add note about pairing confirmation to pairing activity text
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 13:50:08 +01:00
Carlos Rafael Giani c447df3599 combov2: Restrict contents of "status" label in JSON pump status
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 13:48:02 +01:00
Carlos Rafael Giani 01560f45be comboctl-main: Fix missing entry #1 in TDD history
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 00:13:43 +01:00
Carlos Rafael Giani 9aff10537e comboctl-main: Directly push MENU button to switch to TBR duration screen
There's no reason to use the full navigation function to switch from the
TBR percentage to the TBR duration screen, since these are next to each
other, and switching over is done by pressing MENU once.

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 00:13:43 +01:00
Carlos Rafael Giani 4201fe08a5 combov2: Improve shortStatus output
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 00:13:43 +01:00
Carlos Rafael Giani 7d9925db47 Begin implementation of new combo plugin, called "combov2"
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 00:13:43 +01:00
Carlos Rafael Giani 643f26b7bf Import ComboCtl
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 00:13:43 +01:00
Carlos Rafael Giani 5df6084fa8 Enable data binding in app gradle script
This is necessary for autogenerating data binding code.

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 00:13:43 +01:00
Carlos Rafael Giani eb39d44a80 IDEA/Android Studio: Restore wildcard import rules
Commit 9b1b797d09 disabled wildcard imports
for these reasons:

(Source: https://jiga.dev/avoiding-wildcard-imports-in-java-kotlin-with-intellij/)

* Explicit imports clearly states what external classes the current class
  is directly using, provided that you don’t leave redundant imports
  in your code.

* If there are two classes with the same name from different packages,
  it can introduce collision when using wildcard imports.

* When multiple people are working in a project, wildcard imports can
  create confusion as to which classes are actually imported.

Apparently, this got accidentally reverted.

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
2022-11-06 00:13:43 +01:00
Milos Kozak b4edb71e27 TreatmentsActivity -> ui module 2022-11-05 23:20:36 +01:00
Milos Kozak d49b988e95
New Crowdin updates (#2164)
* New translations strings.xml (Polish)

* New translations strings.xml (Russian)

* New translations strings.xml (German)

* New translations strings.xml (Slovak)

* New translations strings.xml (Swedish)

* New translations strings.xml (Turkish)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Romanian)

* New translations strings.xml (French)

* New translations strings.xml (Spanish)

* New translations strings.xml (Greek)

* New translations strings.xml (Danish)

* New translations strings.xml (Czech)

* New translations strings.xml (Romanian)

* New translations strings.xml (French)

* New translations strings.xml (Spanish)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Catalan)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Czech)

* New translations strings.xml (Danish)

* New translations strings.xml (German)

* New translations strings.xml (Greek)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Italian)

* New translations strings.xml (Korean)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Polish)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Russian)

* New translations strings.xml (Slovak)

* New translations strings.xml (Swedish)

* New translations strings.xml (Turkish)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Romanian)

* New translations strings.xml (French)

* New translations strings.xml (Spanish)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Catalan)

* New translations strings.xml (Czech)

* New translations strings.xml (Danish)

* New translations strings.xml (German)

* New translations strings.xml (Norwegian)

* New translations strings.xml (German)

* New translations strings.xml (Greek)

* New translations strings.xml (Irish)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Hungarian)

* New translations strings.xml (Italian)

* New translations strings.xml (Korean)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Polish)

* New translations strings.xml (Czech)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Russian)

* New translations strings.xml (Slovak)

* New translations strings.xml (Swedish)

* New translations strings.xml (Turkish)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Croatian)

* New translations strings.xml (Serbian (Latin))

* New translations strings.xml (Romanian)

* New translations strings.xml (Danish)

* New translations strings.xml (Catalan)

* New translations strings.xml (Greek)

* New translations strings.xml (Russian)

* New translations strings.xml (Irish)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Hungarian)

* New translations strings.xml (Italian)

* New translations strings.xml (Korean)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Polish)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Slovak)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Swedish)

* New translations strings.xml (Turkish)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Croatian)

* New translations strings.xml (Serbian (Latin))

* New translations strings.xml (Romanian)

* New translations strings.xml (French)

* New translations strings.xml (Spanish)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (French)

* New translations strings.xml (Spanish)

* New translations strings.xml (Spanish)

* New translations strings.xml (Serbian (Latin))

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Korean)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Catalan)

* New translations strings.xml (Czech)

* New translations strings.xml (Danish)

* New translations strings.xml (German)

* New translations strings.xml (Greek)

* New translations strings.xml (Irish)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Hungarian)

* New translations strings.xml (Italian)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Croatian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Polish)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Russian)

* New translations strings.xml (Slovak)

* New translations strings.xml (Swedish)

* New translations strings.xml (Turkish)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Hungarian)

* New translations strings.xml (Croatian)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Turkish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Slovak)

* New translations strings.xml (Russian)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Polish)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Korean)

* New translations strings.xml (Italian)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Spanish)

* New translations strings.xml (Romanian)

* New translations strings.xml (French)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Irish)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Catalan)

* New translations strings.xml (Czech)

* New translations strings.xml (Danish)

* New translations strings.xml (German)

* New translations strings.xml (Greek)

* New translations strings.xml (Serbian (Latin))

* Update source file strings.xml

* Update source file strings.xml

* Update source file strings.xml

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Spanish)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Polish)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Korean)

* New translations strings.xml (Italian)

* New translations strings.xml (Hungarian)

* New translations strings.xml (Catalan)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Czech)

* New translations strings.xml (Irish)

* New translations strings.xml (Greek)

* New translations strings.xml (German)

* New translations strings.xml (Danish)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Turkish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Slovak)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Czech)

* New translations strings.xml (Danish)

* New translations strings.xml (French)

* New translations strings.xml (Spanish)

* New translations strings.xml (Romanian)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Romanian)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Korean)

* New translations strings.xml (Italian)

* New translations strings.xml (Hungarian)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Greek)

* New translations strings.xml (German)

* New translations strings.xml (Danish)

* New translations strings.xml (Czech)

* New translations strings.xml (Polish)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Hebrew)

* New translations strings.xml (German)

* New translations strings.xml (Catalan)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Italian)

* New translations strings.xml (Polish)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Croatian)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Turkish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Slovak)

* New translations strings.xml (Russian)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Croatian)

* New translations strings.xml (Spanish)

* New translations strings.xml (Bulgarian)

* New translations strings.xml (Afrikaans)

* New translations strings.xml (Hungarian)

* New translations strings.xml (Catalan)

* New translations strings.xml (Czech)

* New translations strings.xml (Danish)

* New translations strings.xml (German)

* New translations strings.xml (Greek)

* New translations strings.xml (Irish)

* New translations strings.xml (Hebrew)

* New translations strings.xml (Italian)

* New translations strings.xml (Korean)

* New translations strings.xml (Lithuanian)

* New translations strings.xml (Dutch)

* New translations strings.xml (Norwegian)

* New translations strings.xml (Polish)

* New translations strings.xml (Portuguese)

* New translations strings.xml (Serbian (Latin))

* New translations strings.xml (Croatian)

* New translations strings.xml (Portuguese, Brazilian)

* New translations strings.xml (Chinese Simplified)

* New translations strings.xml (Turkish)

* New translations strings.xml (Swedish)

* New translations strings.xml (Slovak)

* New translations strings.xml (Russian)

* 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)

* New translations strings.xml (French)
2022-11-05 21:50:08 +01:00
Milos Kozak e0fba68fd2 contraints plugins -> plugins module 2022-11-04 21:51:37 +01:00
Milos Kozak f0f5a89fe6 AutotunePlugin -> plugins module 2022-11-04 20:43:11 +01:00
Milos Kozak efcae9f073 ProfilePlugin -> plugins module 2022-11-04 19:13:37 +01:00
Milos Kozak 683f87cd15 ThemeSwitcherPlugin -> plugins module 2022-11-04 17:14:43 +01:00
Milos Kozak 139e788e6e FoodPlugin -> plugins module 2022-11-04 16:55:32 +01:00
Milos Kozak cb2adc9fab CareDialog -> ui module 2022-11-04 16:07:32 +01:00
Milos Kozak 571ab88451 StatuLinePlugin -> plugins module 2022-11-04 15:46:22 +01:00
Milos Kozak c5ae87d344 migrate out of app module 2022-11-04 14:34:05 +01:00
Milos Kozak 732f2b4b40 RandomBgPlugin enable 2022-11-04 10:34:21 +01:00
Milos Kozak 2325df48d2 Automation module cleanup 2022-11-04 10:32:12 +01:00
Milos Kozak 6cc8ac96cb add stacktrace to circleci 2022-11-04 08:37:18 +01:00
Milos Kozak 3d3623dc58 TrendCalculator -> implementation module 2022-11-03 23:07:58 +01:00
Milos Kozak da77dec5c9
Merge pull request #2161 from nightscout/eopatch2
EOpatch2
2022-11-03 22:44:11 +01:00
Milos Kozak 8d76d5650b fix jacoco build 2022-11-03 22:27:27 +01:00
Milos Kozak ff91f937b0 increase gradle heap 2022-11-03 22:19:22 +01:00
Milos Kozak 2f14f48c60 EOpatch: update names 2022-11-03 20:23:19 +01:00
Milos Kozak ba11d8ba25 EOpatch: call connectNewPump on activation 2022-11-03 20:18:42 +01:00
Milos Kozak 84d49fc453 EOpatch: cleanup 2022-11-03 17:06:59 +01:00