1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-06-25 22:40:05 +02:00
Gadgetbridge/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/externalevents
dakhnod 4a8523f790 multi-device-support (#2526)
this PR aims to add device for multiple connected devices at once.

A lot of stuff already works, some things need to be done:

- [x] change DeviceCommunicationService to hold multiple devices and supports
- [x] implement connect / disconnect logic
- [x] widgets, not really suited for multiple devices, so far
- [x] change the notification to show multiple devices
- [ ] change GBDeviceService#onFindDevice and similar API functions to target individual devices, not all connected.
- [x] move auto-reconnect setting to device settings
- [x] fix music event crash
- [x] work out behaviour when pressing "connect" from notification
- [ ] handle service crashes
- [ ] suit coordinator methods for multiple devices of same kind
- [x] change ACL_CONNECTED receiver to connect to devices that are not currently registered in DeviceCommunicationService
- [ ] adjust after-boot auto-connection logic
- [ ] fix hanging device support. Device says disconnected, GB says connected
- [x] firmware updater doesn't work

My attempt to make onFindDevice work was to change the arguments to ```EventHandler#onFindDevice(GBDevice device, boolean start)```.
The Problem is that this forces the device-specific implementations to also accept GBDevice as an argument.

Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Co-authored-by: Andreas Shimokawa <shimokawa@fsfe.org>
Co-authored-by: dakhnod <dakhnod@gmail.com>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2526
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
2022-06-14 18:05:41 +02:00
..
gps Mi Band 5: Send GPS location to band during workout 2022-06-09 10:32:26 +02:00
opentracks Move OpenTracks external events to dedicated package 2022-05-30 13:17:26 +02:00
AlarmClockReceiver.java Update license headers 2020-01-09 10:44:32 +01:00
AlarmReceiver.java Amazfit Bip S: Send sunrise and sunset on latest firmware if enabled 2020-09-30 18:16:25 +02:00
AutoStartReceiver.java AutoExporter changes for better operation and troubleshooting. 2022-03-06 13:03:59 +01:00
BluetoothConnectReceiver.java multi-device-support (#2526) 2022-06-14 18:05:41 +02:00
BluetoothPairingRequestReceiver.java multi-device-support (#2526) 2022-06-14 18:05:41 +02:00
BluetoothStateChangeReceiver.java Added CompanionDeviceManager support, added target 29 support, refactored the scan display and UI. 2020-08-02 21:07:14 +03:00
CalendarReceiver.java Fixed a bunch of misspellings and formatting 2020-08-26 14:37:40 +03:00
CMWeatherReceiver.java Update license headers 2020-01-09 10:44:32 +01:00
LineageOsWeatherReceiver.java Fixed a misspell and declared the conversion function as static 2021-06-20 14:57:22 +03:00
MusicPlaybackReceiver.java Update license headers 2020-01-09 10:44:32 +01:00
NotificationListener.java multi-device-support (#2526) 2022-06-14 18:05:41 +02:00
OmniJawsObserver.java Update license headers 2020-01-09 10:44:32 +01:00
PebbleReceiver.java Reworking notification management 2021-10-10 11:49:13 +02:00
PhoneCallReceiver.java Add support for native Do Not Disturb call/SMS functionality on Fossil watches 2022-05-16 21:59:02 +02:00
SMSReceiver.java Add support for native Do Not Disturb call/SMS functionality on Fossil watches 2022-05-16 21:59:02 +02:00
TimeChangeReceiver.java Update license headers 2020-01-09 10:44:32 +01:00
TinyWeatherForecastGermanyReceiver.java Prevent crash when receiving broken weather data from TinyWeatherForecastGermany 2021-10-28 10:32:52 +02:00
WeatherNotificationConfig.java Update license headers 2020-01-09 10:44:32 +01:00
WeatherNotificationReceiver.java Update license headers 2020-01-09 10:44:32 +01:00