1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-06-19 11:30:44 +02:00
Commit Graph

1217 Commits

Author SHA1 Message Date
José Rebelo
5999eb01d0 Nothing CMF Watch Pro: Initial support 2024-01-28 18:46:13 +00:00
Aleksandr Ivanov
139e9cfb14 Pebble: fix of app configuration webview 2024-01-28 01:54:12 +03:00
MrYoranimo
2ef461ab90 Add header to device-specific activity data settings 2024-01-17 20:16:38 +00:00
MrYoranimo
399248e22c Xiaomi: allow forcing the connection type from connection settings 2024-01-17 20:16:38 +00:00
José Rebelo
4231e97cff Sony Headphones: Allow choice of protocol version 2024-01-17 18:48:10 +00:00
FYG_license_bot_ignore_me
4c7476845b Update license headers and CONTRIBUTORS file 2024-01-10 19:01:48 +01:00
Davis Mosenkovs
9e10da062e Add "Reconnect only to connected devices" setting
* Add general_reconnectonlytoconnected setting.

* Replace last_device_address shared prefs string with
last_device_addresses shared prefs string set.
Bluetooth address of a device is added to last_device_addresses when
connecting to the device.
Bluetooth address of a device is removed from last_device_addresses only
when deleting the device or explicitly disconnecting from the device
(e.g. by selecting "Disconnect" in the device tile menu).

* Adjust ExternalPebbleJSActivity to better support multiple connected
devices.
2024-01-08 17:11:33 +00:00
Damien 'Psolyca' Gaignon
0c22ecdd51
Huawei: Add initial support for Huawei-Honor 2024-01-07 23:18:08 +01:00
José Rebelo
ab894ae433 Extract hardcoded activity summary entries to constants 2024-01-06 13:54:06 +00:00
José Rebelo
4a7a201971 Pixoo: Support custom device name 2023-12-23 21:27:57 +00:00
Andreas Shimokawa
81c9aa5faf Pixoo: support "clap hands to turn off screen" and "sleep after silence" settings
Also fix crc calculation :P
2023-12-19 21:08:25 +01:00
Andreas Shimokawa
ea0817f7b6 Use TextUtils.join intead of String.join, to make at least the linter happy
It is not clear to me if this would get desugarized anyway, but linter says needs API 26
2023-12-16 19:37:40 +01:00
José Rebelo
cb3e10f07a Xiaomi: Update stress ranges to match watch 2023-12-12 20:46:59 +00:00
José Rebelo
372cf563ea Xiaomi: Add Vitality Score (PAI-like metric) 2023-12-12 20:27:15 +00:00
José Rebelo
6de7af62e3 Xiaomi: Manage widgets 2023-12-11 22:00:16 +00:00
José Rebelo
4dbf9bb8ac Huami: Toggle phone silent mode from band 2023-12-11 10:50:31 +00:00
José Rebelo
4051c7f7d4 Xiaomi: Add wear mode preference 2023-12-10 18:03:17 +00:00
José Rebelo
c38d2044d8 Xiaomi: Add vitality score notification preferences 2023-12-10 11:19:01 +00:00
José Rebelo
dd0c9cf3e0 Xiaomi: Configure fitness goal notification and secondary goal 2023-12-10 11:02:22 +00:00
José Rebelo
ef73ea1bd5 Make LimitedQueue generic 2023-12-10 10:30:27 +00:00
José Rebelo
4d12ac93e7 Allow multiple device actions to be triggered for the same event 2023-12-09 11:40:28 +00:00
MrYoranimo
435d41aca0 Huami/Xiaomi: centralize handling of device state events
Gadgetbridge can be configured to perform an action when a
Huami device is taken off or the user was detected to fall asleep or
wake up. This functionality was specific to Huami devices, but this
changeset moves this upstream to the AbstractDeviceSupport class in
combination with new GBDeviceEvents.

Now that the ADS has centralized support for this functionality, the
same logic can be used for other devices. In this case, an
implementation is added for supported Xiaomi devices.
2023-12-09 00:20:22 +01:00
José Rebelo
f29995b571 Zepp OS: Allow disabling app notifications per device 2023-12-08 11:29:20 +00:00
José Rebelo
03dbf7533f Xiaomi: Get canned messages from watch 2023-12-06 11:18:13 +00:00
José Rebelo
9ddbcc0c8a Xiaomi: Use display items labels from watch 2023-12-05 18:20:02 +00:00
José Rebelo
3ab1ac26db Refactor known preference values code to be reusable 2023-12-05 18:20:02 +00:00
José Rebelo
ba0ca1de75 Delegate auth key validation to coordinator 2023-12-02 10:59:34 +00:00
José Rebelo
0c4e2df075 Xiaomi: Fix crash when opening app manager
Regression introduced by e53c67e8bf
2023-11-29 21:11:54 +00:00
José Rebelo
99b3dc3226 Fix crash when pairing current device as companion 2023-11-28 18:12:12 +00:00
foxstidious
4dc10d1d02 Implemented better message preview, added ability to specify high-level alert by category 2023-11-25 22:52:26 +00:00
foxstidious
6be7f7c9cc Fixed find phone on, added preference to preview messages on Casio GDB-200 2023-11-25 22:52:26 +00:00
Andreas Böhler
6ef6c9be43 Fix Bonding for the Casio GB5600/6900/STB-1000 series 2023-11-25 22:46:45 +00:00
José Rebelo
1b645f44d7 Xiaomi: Keep only watchface tab in app management 2023-11-25 21:16:53 +00:00
José Rebelo
7124d337e1 Mi Band 8: Implement reminders 2023-11-25 21:16:52 +00:00
José Rebelo
809a809082 Mi Band 8: Replace sleep time with sleep mode schedule (fix crash) 2023-11-25 21:16:51 +00:00
Davis Mosenkovs
2ef44e766e PineTime: Improve notification handling
* If setting enabled, add source application (or SMS)
* Fallback to using notification subject if body is unavailable
* Trim/cut sender or title at 25+ chars if necessary
* Better support for notifications without body or subject
2023-11-23 21:30:42 +00:00
Martin.JM
c793453f16 Add blood oxygen graph 2023-10-29 20:43:46 +01:00
Daniel Dakhno
eb0747b926 Device Management: centralized DeviceType resolution cache 2023-10-29 13:45:48 +00:00
Daniel Dakhno
c2a9f5d805 Device management: store deviceType name in DB 2023-10-27 19:14:49 +00:00
Arjan Schrijver
a0e6085324 Fossil/Skagen Hybrids: Allow configuring call rejection method 2023-10-20 10:50:25 +02:00
Arjan Schrijver
88341c8b86 Fossil/Skagen Hybrids: Add new navigation app 2023-10-18 13:06:16 +00:00
ahormann
28e673415f Support for Femometer Vinca 2 and HealthThermometerProfile (#3369)
Co-authored-by: ahormann <ahormann@gmx.net>
Co-committed-by: ahormann <ahormann@gmx.net>
2023-10-15 13:37:41 +00:00
Arjan Schrijver
69fcec059d Replace old-style preference switch with Material 3 switch 2023-10-09 09:53:36 +02:00
José Rebelo
dcf2629854 Remove scanning intensity preference and legacy discovery activity
The refactored DiscoveryActivityV2 does not freeze anymore, even under
maximum scanning intensity on older phones, and seems to not have
introduced any regressions.
2023-10-06 22:16:58 +01:00
Ganblejs
2c5b687cef Bump main targetSdkVersion to 33 2023-10-04 11:12:17 +00:00
Daniel Dakhno
b97b26ce3a Device manager: moved device icons and name to Coordinator 2023-09-28 00:11:02 +03:00
Davis Mosenkovs
edce45dcc3 Mijia LYWSD02: Battery + setting temperature scale
Implement reading battery percentage.
Implement setting temperature scale used on clock display.

Communication protocol taken from: https://github.com/h4/lywsd02
2023-09-23 17:18:42 +03:00
vladkorotnev
889a1db801 Sony Wena 3: Initial support (#3311)
Co-authored-by: vladkorotnev <vladkorotnev@noreply.codeberg.org>
Co-committed-by: vladkorotnev <vladkorotnev@noreply.codeberg.org>
2023-09-23 10:31:41 +00:00
José Rebelo
9230580a01 Display devices with unknown name during scan 2023-09-19 20:45:14 +01:00
José Rebelo
e078ceff0a Introduce DiscoveryActivityV2 2023-09-19 20:45:14 +01:00
José Rebelo
6f7fb261e7 Move Discovery activities to standalone package 2023-09-19 20:44:42 +01:00
José Rebelo
9401b61a02 Allow text to be shared to devices 2023-09-11 13:28:37 +00:00
Arjan Schrijver
557bfea35c Add lint baseline, enable linting on CI, fix some reported errors (#3291)
This PR:
- fixes some errors reported by `gradlew lint` and the Android Studio "Code Inspection" tool
- adds a snapshot file `lint-baseline.xml` of the remaining lint errors and warnings to be used by the linter as baseline
- adds a job for CI to run `gradlew lint` on every build

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3291
Reviewed-by: José Rebelo <joserebelo@noreply.codeberg.org>
Co-authored-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
Co-committed-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
2023-09-11 09:17:04 +00:00
José Rebelo
564cb1bfcc Introduce WeatherSpec v4
New fields for current weather:

- dewPoint
- pressure
- cloudCover
- visibility
- sunRise
- sunSet
- moonRise
- moonSet
- moonPhase
- airQuality
- latitude
- longitude
- feelsLikeTemp
- isCurrentLocation

New fields for daily forecast:

Deprecate the old "Forecast" class, which was not versioned, but keep it for backwards compatibility with old apps. Old WeatherSpec forecasts are de-serialized into the new Daily class. New fields:

- windSpeed
- windDirection
- uvIndex
- precipProbability
- sunRise
- sunSet
- moonRise
- moonSet
- moonPhase
- airQuality

Add hourly values:
- timestamp
- temp
- conditionCode
- humidity
- windSpeed
- windDirection
- uvIndex
- precipProbability

Air Quality:
- aqi (plume)
- co
- no2
- o3
- pm10
- pm25
- so2
- coAqi
- no2Aqi
- o3Aqi
- pm10Aqi
- pm25Aqi
- so2Aqi
2023-08-27 15:13:57 +00:00
José Rebelo
2320043c00 Fix min temp in cached weather data debug popup 2023-08-22 17:38:33 +01:00
José Rebelo
74dc0f70a6 Contacts: Migrate to ActivityResultContracts 2023-08-21 21:48:03 +01:00
Arjan Schrijver
7c55f5df86 Upgrade cached weather old style dialog to Material 3 dialog 2023-08-20 22:20:14 +02:00
José Rebelo
50f962c520 Show UV Index and precip probability for cached weather 2023-08-20 10:01:15 +01:00
Kamalei Zestri
a0424527d5 Fixed formatting and unneccessary code 2023-08-20 08:56:29 +00:00
Kamalei Zestri
ff19ceeae8 Add "Showed Cached Weather" function to Debug menu 2023-08-20 08:56:29 +00:00
José Rebelo
b1bedfaa56 Keep charts current date on config changes 2023-08-16 13:42:44 +01:00
Arjan Schrijver
c9bbc05674 Show warning when choosing dynamic theme but dynamic colors are not supported by Android 2023-08-12 10:52:12 +02:00
José Rebelo
3799c51dc3 Add preference to display changelog on startup 2023-08-09 20:00:47 +01:00
José Rebelo
942e853ca7 Prevent display of empty changelog 2023-08-09 19:37:27 +01:00
José Rebelo
4688f7d43c Fix chart legend text color on dark theme 2023-08-08 08:47:26 +00:00
Arjan Schrijver
ee4f3fabcf Fix widget device choice dialog behaviour 2023-08-08 08:47:26 +00:00
José Rebelo
88ebbdad7a Fix changelog background color to match dialog 2023-08-08 08:47:26 +00:00
Arjan Schrijver
225d466a7b Make widgets configuration activities adhere to configured style 2023-08-08 08:47:26 +00:00
Arjan Schrijver
b6e252c4c1 Switch UI to Material 3 and support dynamic colors 2023-08-08 08:47:26 +00:00
José Rebelo
2d7a6b80eb Migrate Loyalty Cards preferences to AbstractSettingsActivityV2 2023-07-28 22:47:39 +01:00
José Rebelo
fe95d9aaa8 Fix disable log preference if log file not initialized
Regression introduced by 01b457895
2023-07-28 21:31:48 +01:00
José Rebelo
f3c74267c5 Set OpenTracks selection spinner to current package 2023-07-28 20:21:53 +00:00
José Rebelo
47a757bd91 Set default name for database export file 2023-07-28 20:21:53 +00:00
José Rebelo
f9ef3f47ab Extract Pebble and HPlus settings to standalone activities 2023-07-28 20:21:53 +00:00
José Rebelo
e068bfdb75 Fix crash when acquiring location 2023-07-28 20:21:53 +00:00
José Rebelo
12b5ec8415 Upgrade Settings to androidx
- Extend AbstractSettingsActivityV2
- Replace all checkbox preferences with switch preferences
- Add app:useSimpleSummaryProvider to all preferences that were in getPreferenceKeysWithSummary
- Add null checks on all prefs to fix crashes in nested preference screens
- Replace listeners with lambdas to reduce code indentation
- Set input type to number where relevant
2023-07-28 20:21:53 +00:00
José Rebelo
f4b059f173 Introduce AbstractSettingsActivityV2
This class introduces some of the common logic across preference
screens, handling nested PreferenceScreens, as well as the back button
and action bar title setting.
2023-07-28 20:21:53 +00:00
José Rebelo
48ee259d89 Bangle.js: Reorganize device settings 2023-07-27 18:38:15 +01:00
José Rebelo
bac1d35479 Upgrade notification settings to androidx 2023-07-25 19:52:12 +01:00
Daniele Gobbetti
53c06b8c31 Introduce native app shortcuts for android > 30 2023-07-25 18:28:35 +02:00
José Rebelo
cac92fdc26 Upgrade discovery and pairing preferences to androidx 2023-07-25 12:24:42 +01:00
Gordon Williams
1b281c7c62 Fixing SecurityErrors on Android 12+ discovered via Play Store (after API31 update)...
* Check for bluetooth permissions in DiscoveryActivity
 * At startup we now pop up a dialog explaining why we want *any* permissions
 * Fixing ControlCenterv2 permissions requests for Android S and later (requesting background location stopped *any* dialog appearing)
 * Fixing all errors in DiscoveryActivity from Android Studio by catching errors
 * Move permission requests around to ensure that we only call RequestMultiplePermissions from onCreate
 * Only show dialog if we have permissions to request
 * Fix "LifecycleOwners must call register before they are STARTED" on some Android devices: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3192/files#issuecomment-967267
2023-07-25 11:50:53 +01:00
José Rebelo
f08c08005b Upgrade about user preferences to androidx 2023-07-25 09:22:45 +01:00
José Rebelo
cac41ea945 Upgrade charts preferences to androidx 2023-07-25 09:22:41 +01:00
José Rebelo
116703adff Pull reusable preferences logic to AbstractPreferenceFragment 2023-07-24 23:34:00 +01:00
José Rebelo
a02a6cba14 Update device settings action bar title depending on current screen 2023-07-23 22:27:11 +01:00
José Rebelo
ac89b1df9d Use package name for Catima permissions
The Catima permissions had to be split per package-name to avoid
conflicts between debug and release channels due to mismatching apk
signatures.

See https://github.com/CatimaLoyalty/Android/pull/1411
2023-07-09 14:29:30 +01:00
José Rebelo
3516099dc9 Fix crash if Catima is not installed 2023-07-04 09:43:35 +01:00
José Rebelo
fea3bf50a4 Zepp OS: Add loyalty cards integration with Catima 2023-07-03 23:19:19 +01:00
José Rebelo
e95c8a3775 Add PAI charts 2023-07-02 16:05:10 +01:00
Lukas
6da6baa5e6 Add switch to control if the GPS chip should be used to locate the location 2023-06-22 21:37:55 +00:00
José Rebelo
88b7cd5756 Add stress charts 2023-06-17 17:28:11 +01:00
José Rebelo
fec48c4340 Generalize charts logic for non-activity data
- Make ChartsHost independent from ChartsActivity
- Rename ChartsActivity to ActivityChartsActivity
- Rename AbstractChartFragment to AbstractActivityChartFragment
- Pull common charts logic to parent classes:
    - From ActivityChartsActivity to AbstractChartsActivity
    - From AbstractActivityChartFragment to AbstractChartsFragment
2023-06-16 23:53:28 +01:00
José Rebelo
5957f71110 App Manager: Fill out missing app info from cache 2023-06-15 22:01:16 +01:00
Damien 'Psolyca' Gaignon
a3c0e10330
Add GBDevice argument to getAlarmSlotCount 2023-06-13 23:10:55 +02:00
José Rebelo
c3c4c2ce74 Zepp OS: Add watch app logs developer option 2023-06-11 18:23:54 +01:00
José Rebelo
89b23f77b7 App Manager: Fix cached apps sorting 2023-06-10 21:04:41 +00:00
José Rebelo
240326c99a App Manager: Hide drag handle if app reorder is not supported 2023-06-10 21:04:41 +00:00
José Rebelo
c1339aa5c6 App Manager: Only set up to date apps on FOSSILQHYBRID 2023-06-10 21:04:41 +00:00
José Rebelo
6dcd055d0d App Manager: Add confirmation before deleting app 2023-06-10 21:04:41 +00:00