1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-11-05 01:37:03 +01:00
Commit Graph

210 Commits

Author SHA1 Message Date
José Rebelo
0301d0e9a8 Sony Headphones: Merge V3 protocol into V2
The protocols are not actually different - the different messages only
depended on whether the devices supports wind noise reduction or not.
2024-03-15 22:56:11 +00:00
Daniel Dakhno
afe3c1fd50 Testing: fixed unit tests 2024-03-05 00:11:32 +01:00
Andreas Shimokawa
8b9462f521 fix tests 2024-02-12 18:31:48 +01:00
Damien 'Psolyca' Gaignon
ef06fd4d5e
[Huawei] Fix test 2024-02-09 12:03:03 +01:00
Damien 'Psolyca' Gaignon
270212a771
[Huawei] Rename authMode to deviceSupportType 2024-02-09 12:03:01 +01:00
José Rebelo
34fd18885a Zepp OS: Refactor firmware uploads
Zepp OS 3 firmware upgrades are big (200MB+). Gadgetbridge was crashing,
since the entire firmware file would be pulled into memory.

This commit unifies all the logic for Zepp OS firmware handling.

However, since the needed refactor was big, this commit duplicates some
of the code from Huami classes, namely:
- ZeppOsFirmwareUpdateOperation clones UpdateFirmwareOperation2020
- ZeppOsFwInstallHandler clones AbstractMiBandFWInstallHandler

This avoids changes to older device logic and introducing regressions.

Lost functionality:
- Repackaging firmwares as UIHH (does not seem to be needed, and was not
  used anyway). Code can be recovered from this commit if needed in the
  future
- Whitelisted firmwares by checksum (we do not have a lot of them at
  this point anyway)

Other misc changes:
- Rename ZipFile to GBZipFile not to clash with the java class

Tested by updating the Amazfit GTR 4 to Zepp OS 3.
2024-02-01 18:47:28 +00:00
José Rebelo
773132c4e1 Make all Zepp OS classes explicit
There are still some actual "Huami 2021" classes that are used in
non-ZeppOS devices, but this refactor improves the distinction.
2024-01-29 23:30:28 +00:00
José Rebelo
61116c5fc8 Upgrade to gradlew 7.6, mockito-core 2.28.2
Fixes the unit tests after the AGP upgrade from 1a92bcf8a
2024-01-29 18:50:40 +00:00
José Rebelo
5999eb01d0 Nothing CMF Watch Pro: Initial support 2024-01-28 18:46:13 +00:00
Martin.JM
704875c3c2 Update license headers 2024-01-10 18:25:20 +00:00
José Rebelo
9bfe3dcd5f Huawei: Fix tests
- Allow the calendar to be passed as parameter for tests
- Disable the setWearMessage test, for now, broken since 5b0736b751
2024-01-09 17:27:18 +00:00
Damien 'Psolyca' Gaignon
0c22ecdd51
Huawei: Add initial support for Huawei-Honor 2024-01-07 23:18:08 +01:00
mormegil
ec73b244ee Improve ASCII transliterator
We should use NFKD instead of NFD since we are flattening to US-ASCII
afterwards anyway. This allows various Unicode characters which would
end up as a question mark to be represented by their compatibility
decomposition. This applies to e.g. ligatures (e.g. U+FB01 LATIN SMALL
LIGATURE FI will now be replaced with plain fi instead of a question
mark), and also the U+00A0 NO-BREAK SPACE [NBSP] to be replaced by
a normal space instead of a question mark.

+Add Czech fancy quotes to the Czech transliterator
+Add a unit test for Multitransliterator
2023-11-28 18:24:42 +00:00
José Rebelo
096358c76f Fix unit tests 2023-11-25 23:08:02 +00:00
Kornél Schmidt
58a8484322 added test, added to defaultLanguagesIfEnabled 2023-11-25 23:03:30 +00:00
José Rebelo
d66de2f94f Xiaomi: Fix activity file id encoding 2023-11-25 21:16:52 +00:00
José Rebelo
544909a970 Mi Band 8: Activity fetching basics 2023-11-25 21:16:52 +00:00
José Rebelo
3d8ae8596c Fix unit tests 2023-10-28 15:53:47 +01:00
Davis Mosenkovs
77450efb99 Add Common Symbols transliteration 2023-10-07 17:42:52 +03:00
Daniel Dakhno
ef1d38d9d3 Device Manager: replaced getSupportedType with supports method
Huami: introduced getSupportedDeviceName

Huami: implemented getSupportedDeviceName

Huami: fixed typo

Device manager: added error on empty getSupportedDeviceName and empty supports()

Device manager: migrated more devices to getSupportedDeviceName

Device manager: simplified default supports implementation

Device manager: added caching for getSupportedDeviceName pattern

Device manager: added caching DeviceType resolution

Device manager: changed pattern matching find()->matches()

Device manager: use Candidate as caching key

Device manager: more verbose variable initialization

Device manager: fixed typo

Device manager: removed device caching from DeviceHelper

Gradle: removed protoc binary

Device manager: moved more devices to getSupportedDeviceName

Device manager: reduced usages of String.format

Device Vesc: removed multiple device types

Device management: regex improvements

Makibes HR3: fixed device recognition regex
2023-10-05 20:34:53 +00:00
José Rebelo
d1dee47186 Fix tests 2023-10-04 21:58:45 +01:00
Davis Mosenkovs
98df2d1837 Add Latvian transliteration 2023-10-04 00:30:27 +03:00
Daniel Dakhno
b97b26ce3a Device manager: moved device icons and name to Coordinator 2023-09-28 00:11:02 +03:00
José Rebelo
3716d99788 Add test to ensure no duplicated DeviceType keys 2023-08-13 13:56:57 +01:00
hrglpfrmpf
c1fd0b77ad Support for Withings Steel HR (#2831)
Co-authored-by: hrglpfrmpf <hrglpfrmpf@web.de>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2831
Co-authored-by: hrglpfrmpf <hrglpfrmpf@noreply.codeberg.org>
Co-committed-by: hrglpfrmpf <hrglpfrmpf@noreply.codeberg.org>
2023-07-26 17:20:43 +00:00
mormegil
dccb8ed1c4 Changes suggested in PR
- use `BLETypeConversions`, added the missing functions there (+ unit tests for all)
- change Java package of Protobuf definitions so that they are not discarded by Proguard
-- +add subpackages to the Proguard rules so we can subdivide the classes

+ disable device-specific settings for Vivomove (no settings yet)
2023-07-20 20:30:14 +00:00
José Rebelo
bdb904faf9 Fix character mark removal before flattening to ASCII 2023-07-17 22:42:53 +01:00
José Rebelo
853470a2bd Revert "Zepp OS: Unify support class and fw handling"
This reverts commit d59e8c3f62.

We need to refactor the Huami classes too, otherwise this needs a lot of
hacks to work properly.
2023-06-15 21:39:22 +01:00
José Rebelo
d59e8c3f62 Zepp OS: Unify support class and fw handling 2023-06-15 20:50:15 +01:00
José Rebelo
76d99f1c33 Zepp OS: Start new GPX segments on pause/resume 2023-05-14 16:22:32 +01:00
José Rebelo
01ec74602a Refactor and extend GpxParser 2023-05-14 14:19:48 +01:00
José Rebelo
e0d481bb36 Sony WH-1000XM5: Add power off, fix battery, fix speak-to-chat fetch 2023-05-06 17:41:10 +01:00
José Rebelo
7b3fbeb4af Sony WH-1000XM5: Initial support 2023-05-06 16:03:48 +01:00
José Rebelo
e4933a0b42 Sony Headphones: Improve unit tests 2023-05-06 14:41:28 +01:00
thirschbuechler
da001544c5 add CroatianTransliterator 2023-03-21 20:00:28 +00:00
roolx
11bcaeb7a8 Add Georgian Transliteration 2023-02-09 21:44:35 +00:00
Arjan Schrijver
b1d03e9f7a Clean up duplicated unimplemented methods from device support classes
Moved to AbstractDeviceSupport so each device support class can override them if required. This change helps to keep the code base clean by not requiring every (Device)Support class to implement these methods even when they don't need them.
2023-01-05 22:11:32 +01:00
José Rebelo
17c58d2947 Amazfit GTR 4/GTS 4: Add AGPS Updates 2023-01-05 11:31:51 +00:00
José Rebelo
041aa4faf2 Sony WF-1000XM4: Fix audio codec 2022-12-31 11:55:06 +00:00
José Rebelo
ff15fdaa9f Sony LinkBuds S: Initial support 2022-12-30 18:07:18 +00:00
José Rebelo
b51328e4f2 Huami: Fix payload when setting the time
Fixes #2999
2022-12-15 21:38:06 +00:00
MPeter
4c14dd5f72 fix indentation 2022-11-05 11:26:24 +01:00
MPeter
e75f80c3f9 Add unit test for ZipFile class 2022-11-04 19:17:54 +01:00
José Rebelo
addf7ff6a6 Amazfit GTR 4: Initial support 2022-10-22 22:03:49 +02:00
José Rebelo
8fdfbfa97c Sony WF-1000XM4: Initial support 2022-10-22 13:14:50 +01:00
Daniel Dakhno
858c53efb8 Utils: added simple Protobuf creator 2022-09-15 01:40:05 +02:00
José Rebelo
83a2b10c03 Fix tests after SDK bump 2022-09-11 16:13:29 +02:00
José Rebelo
ba565df088 Xiaomi Smart Band 7: Initial support 2022-08-19 23:13:27 +02:00
José Rebelo
5d82030d49 Refactor file logging logic 2022-08-07 23:24:16 +01:00
José Rebelo
7892b8be6a Fix tests after DeviceService changes 2022-08-05 21:36:16 +01:00