Commit Graph

185 Commits

Author SHA1 Message Date
José Rebelo
b59ba76803 Refactor preferences screen 2024-08-31 13:33:25 +00:00
José Rebelo
95fdee3cbe Use MediaController for media buttons 2024-08-30 11:03:20 +00:00
Daniele Gobbetti
7d9f8704c9 Remove device_specific_settings category from main preferences
All devices are now handled by their device specific preferences
2024-08-25 20:20:52 +00:00
José Rebelo
d8266b3d6b ZeTime: Migrate global preferences to device-specific 2024-08-23 20:22:20 +01:00
José Rebelo
2b9987d3e5 Mi Band: Migrate global preferences to device-specific 2024-08-23 14:02:28 +00:00
José Rebelo
4459b30ee6 Intent API: Add broadcast on activity sync finish 2024-06-02 22:03:12 +01:00
José Rebelo
41aab5135f Fossil Q Hybrid: Migrate global preferences to device-specific 2024-05-08 21:42:29 +00:00
José Rebelo
9bef90a151 HPlus: Migrate global preferences to device-specific 2024-04-28 19:02:20 +01:00
Marcel Alexandru Nitan
2190c82ed7 feature: Sleep as android support
Implement support for Sleep As Android with an usable example for ZeppOs
devices

Sleep as Android documentation:

https://docs.sleep.urbandroid.org/devs/wearable_api.html

Signed-off-by: Marcel Alexandru Nitan <nitan.marcel@protonmail.com>
2024-04-20 12:15:42 +03:00
Arjan Schrijver
a2c861f66c Add preference for hiding bottom navigation bar 2024-04-17 21:58:23 +02:00
José Rebelo
7a4cd3ea78 Remove deprecated general auto-reconnect preference 2024-04-08 23:29:04 +01:00
Arjan Schrijver
43fddd0110 Dashboard view (#3478)
This adds a new dashboard-type view to Gadgetbridge. The new dashboard activity displays several widgets with aggregated statistics from multiple devices. New preferences are added to allow configuration of the dashboard and its widgets. A new bottom navigation bar is added to switch between the Dashboard and Devices views.

Some issues that prompted this feature and provided inspiration for the implementation:
- https://codeberg.org/Freeyourgadget/Gadgetbridge/issues/301 (More Intuitive User Interface)
- https://codeberg.org/Freeyourgadget/Gadgetbridge/issues/3074 (Ability to merge historical data from several devices)

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3478
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>
2024-04-04 19:28:04 +00:00
José Rebelo
6853e3671b Prevent text cutoff on all checkbox preferences 2024-03-31 07:46:47 +00: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
Arjan Schrijver
fac566c7da Support selecting enabled navigation apps 2023-11-23 22:57:34 +01:00
Arjan Schrijver
8add6c4da9 Autodetect OsmAnd package name and make it configurable 2023-11-23 22:33:12 +01:00
Arjan Schrijver
69fcec059d Replace old-style preference switch with Material 3 switch 2023-10-09 09:53:36 +02:00
Arjan Schrijver
56be4c7bee Add explanation for dynamic colors theme 2023-08-12 11:47:17 +02:00
José Rebelo
3799c51dc3 Add preference to display changelog on startup 2023-08-09 20:00:47 +01:00
José Rebelo
f0067ebeae Upgrade Mi Band preferences to androidx 2023-08-08 20:10:05 +01:00
José Rebelo
f9ef3f47ab Extract Pebble and HPlus settings to standalone activities 2023-07-28 20:21:53 +00:00
José Rebelo
e9af9d9b4a Disable reserved icon space for all settings 2023-07-28 20:21:53 +00:00
José Rebelo
db112cc90a Reformat preferences.xml 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
a746943603 Settings: Move Intent API to standalone preference screen 2023-07-23 19:48:59 +01:00
Benjamin Swartley
f81ffc3447 Add mb_intents summary and make dep for Preferred Audioplayer 2023-07-08 23:13:04 +00:00
Benjamin Swartley
739bd1b5a8 Use AudioManager for Media Buttons
Switch from ACTION_MEDIA_BUTTON to all AudioManager

Add mb_intents pref for audioplayer
2023-07-08 23:13:04 +00:00
octospacc
2659a23421 Intent API: Add allow_debug_commands option and receivers for SEND, INCOMING_CALL 2023-05-29 22:57:34 +02:00
José Rebelo
592356faf1 OsmAnd: Make navigation instructions configurable 2023-05-26 11:26:22 +00:00
José Rebelo
4a0e67cb30 Add Intent API to trigger activity sync and DB export 2022-12-15 14:17:03 +00:00
dakhnod
ee207c978f Device FlipperZero: added basic support for the Flipper Zero (#2840)
This PR adds support for the flipper zero device.

It's main purpose currently is to provide an Intent-based API to Tasker and similar apps to play sub-GHz files.

In the future, file management and other features might be useful.

Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2840
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
2022-09-04 23:05:57 +02:00
José Rebelo
ba565df088 Xiaomi Smart Band 7: Initial support 2022-08-19 23:13:27 +02:00
Gabriele Monaco
d9daa16bf8 Added calendar blacklist setting to banglejs 2022-07-21 10:58:15 +02:00
Gabriele Monaco
ceaf520824 Added picture for banglejs and fixed strings 2022-07-21 10:58:15 +02:00
glemco
f4e6d953ff Enabling calendar sync for bangle 2022-07-21 10:58:15 +02:00
José Rebelo
152f19575f Make calendar blacklist configurable per device 2022-07-05 19:58:21 +02:00
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
José Rebelo
bfdc24ab87 Add auto export and auto fetch preference dependencies 2022-05-16 10:27:13 +02:00
vanous
3ecc6519b0 Add selection dialog to set OpenTracks package name 2022-02-25 07:33:10 +01:00
Arjan Schrijver
5224304b6c Read overall statistics from received OpenTracks dashboard API URIs 2022-02-17 11:00:58 +01:00
Arjan Schrijver
e188e54622 Add OpenTracksController for interactions with OpenTracks 2022-02-17 11:00:58 +01:00
vanous
682a26e56d Add Discovery setting to the Discovery Activity 2021-12-26 18:14:07 +01:00
vanous
71138192f0 Allow discovering unsupported devices for debug purposes 2021-12-26 18:14:07 +01:00
Andreas Shimokawa
cf4e4952ea Move location settings out of pebble menu 2021-11-02 23:30:37 +01:00
vanous
d3d4130a95 Reworking notification management
- rename some methods to better indicate their functions.
- make the notification filter to be allow or deny list,
  solves #2256 and #336
- make app word filter to behave based on allow/deny settings.
- make Pebble notifications to honor the allow/deny settings.
- add generic "debug function" to Debug activity.
- add Message privacy mode settings, solves #2279
2021-10-10 11:49:13 +02:00
Anemograph
d088c3d63f Added ringtone preference setting. 2021-09-21 21:03:37 +02:00
vanous
c5aaaec7e3 Add black background to Dark Theme 2021-07-06 21:04:27 +02:00
vanous
9fc02ff09b move transliteration to per device to DeviceCommunicationService, plus migration, fix #2237 2021-03-28 13:33:08 +02:00
Arjan Schrijver
cff4b65fb8 Fossil Hybrid HR: Sync notification dismissals to watch (#2219)
Fossil Hybrid HR: Move check for autoremove_notifications pref to NotificationListener

Fossil Hybrid: Rename logger to LOG and replace printStackTrace calls

Keep and maintain list of notifications pushed to device

Fossil Hybrid HR: Make autoremove notifications toggleable in device settings

Fossil Hybrid HR: Sync notification dismissals to watch

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2219
Co-Authored-By: Arjan Schrijver <arjan5@noreply.codeberg.org>
Co-Committed-By: Arjan Schrijver <arjan5@noreply.codeberg.org>
2021-03-08 14:29:08 +01:00
vanous
e3a5a63e08 Separate AboutUser and link to it from Charts Settings 2020-11-14 10:06:55 +01:00