oliexdev
4e5c24f7fe
Refactor BluetoothCommunication handler usage
...
refactors the `BluetoothCommunication` class to use a single `mainHandler` for managing various delayed tasks like pre-scan timeouts, disconnect timeouts, and connection delays.
2025-08-20 12:07:16 +02:00
oliexdev
561b8e886a
Update LogManager warning message and set BT_STATUS on disconnect
2025-08-20 11:39:08 +02:00
oliexdev
5d8d8165fc
Refactors Bluetooth permission handling and connection logic across several parts of the application
2025-08-20 11:23:11 +02:00
oliexdev
9dc61d7e53
Refactor unique number generation for legacy scales. Additionally, fix corrected date parsing and history data for the MiScale2 driver:
2025-08-20 08:36:34 +02:00
oliexdev
01fd3214aa
- Implemented a fileMutex
to synchronize file access operations, preventing potential race conditions when writing to or exporting the log file.
...
- Increased `MAX_LOG_SIZE_BYTES` from 5 MiB to 10 MiB.
2025-08-19 21:07:26 +02:00
oliexdev
8c7a62c401
Implement database migration from version 6 to 7
2025-08-19 20:50:13 +02:00
oliexdev
f29bd962d2
Safeguard LogManager against concurrent file access
2025-08-19 19:11:00 +02:00
oliexdev
5f9d8f95dc
Refactor BluetoothMiScale2 for improved history handling and more reliable skeletal muscle mass calculation in MiScaleLib
using the Janssen BIA equation, with a fallback to a lean body mass ratio if impedance is unavailable.
2025-08-19 18:43:13 +02:00
oliexdev
94f23467ca
Apply highlight color correctly for light theme
2025-08-18 18:28:05 +02:00
oliexdev
3a13162f9e
Displays evaluation state symbols (▲, ▼, ●, !) next to values in table screen, similar to the overview screen.
2025-08-18 18:12:27 +02:00
oliexdev
cf6d834db7
Introduces a new framework for evaluating measurement values against reference ranges and displays this information in the UI.
2025-08-18 16:52:10 +02:00
oliexdev
220afffb33
Enable point selection on graph screen to show measurement details
2025-08-18 09:40:39 +02:00
oliexdev
3855d93046
Introduces a feature where selecting a point on the line chart in the OverviewScreen
will scroll the measurement list to the corresponding item and highlight it temporarily.
2025-08-18 07:52:46 +02:00
oliexdev
8f7c15e0c5
Implement Automatic Database Backups
2025-08-17 19:25:01 +02:00
oliexdev
98cc2ba9f5
Add settings for chart data smoothing
2025-08-16 17:54:53 +02:00
oliexdev
4da84c8778
Adjust default icon and color for custom measurement types
2025-08-16 14:52:06 +02:00
oliexdev
4eed5ce2f7
Replace String-based icons with enum and introduce MeasurementIcon composable
2025-08-16 14:32:47 +02:00
oliexdev
d61670cc84
enhances unit conversion capabilities, particularly for BODY_FAT
, WATER
, and MUSCLE
measurement types. These types can now be converted between percentage (%) and absolute mass units (kg, lb, st)
2025-08-16 10:36:18 +02:00
oliexdev
5b03c4bd89
Update default measurement type colors and units
2025-08-16 09:18:26 +02:00
oliexdev
a3d18a1258
Introduces a new "Chart Settings" screen accessible from the main settings menu.
2025-08-15 15:56:56 +02:00
oliexdev
365b1029c5
Fix sync selectedUser field in driver with setSelectedScaleUser()
2025-08-15 12:57:58 +02:00
oliexdev
cd991b4f18
Modifying the UserDetailScreen
to use the localized gender display names.
2025-08-15 11:45:12 +02:00
oliexdev
9e4b7f933f
If a user mapping already exists, skip the user list and jump directly to selecting the scale user.
2025-08-15 11:10:11 +02:00
oliexdev
3459ac1833
Enhance merging logic for Bluetooth standard weight profile
2025-08-15 09:12:52 +02:00
oliexdev
bedf32c46b
Improve logging in BluetoothStandardWeightProfile
2025-08-15 08:36:23 +02:00
oliexdev
b2fc2a1570
Translate time range filter options
2025-08-15 08:31:29 +02:00
oliexdev
53d05505c6
Added some documentation to BluetoothViewModel for clarity
2025-08-15 08:07:41 +02:00
oliexdev
5bef95e613
- Streamlined the handling of user input dialogs (CHOOSE_USER
, ENTER_CONSENT
) in AppNavigation.kt
by resetting dialog-specific state based on interactionEvent.interactionType
to ensure fresh state upon dialog visibility.
...
- Introduced `pendingUserId` to better manage user context during asynchronous operations like consent requests.
- Improved logging for user registration and selection steps.
2025-08-15 07:30:24 +02:00
oliexdev
ac181603e1
Enhanced LogManager with Markdown formatting and lifecycle awareness
2025-08-15 06:40:01 +02:00
oliexdev
841dcf04fc
Add logging for CHOOSE_USER interaction
2025-08-14 13:03:28 +02:00
oliexdev
38185c26c9
Translate new dialog strings
2025-08-14 12:25:21 +02:00
oliexdev
28725e9ba3
When calculating derived values, the code now fetches the unit from the MeasurementType
and converts the input values (e.g., weight to KG, waist to CM) before passing them to the calculation functions. This ensures calculations are performed with consistent units.
2025-08-14 12:02:28 +02:00
oliexdev
994361ad5c
Refactor measurement type to improves the logic for setting the initial and updating selectedInputType
based on allowed types.
2025-08-13 19:43:29 +02:00
oliexdev
22f5512b83
Refactor: Remove unit settings from user, use measurement type settings
2025-08-13 19:21:24 +02:00
oliexdev
acded1e050
Enable measurement value conversion when unit changes
2025-08-13 18:15:55 +02:00
oliexdev
8691a33612
Add setting to show measurement type on right Y-axis
2025-08-13 13:53:32 +02:00
oliexdev
aa7a923946
Refactor UserDetailScreen to use UTC for date calculations
2025-08-13 09:39:41 +02:00
oliexdev
e5e670835a
Refactor ScaleFactory and BluetoothScannerManager to use ScannedDeviceInfo
2025-08-13 09:08:12 +02:00
oliexdev
b9203c8d5d
Add scale and measure unit to user settings
2025-08-12 08:17:59 +02:00
oliexdev
db78109132
Handle 'dateTime' column and skip zero values during CSV import for compatibility with openScale 2.x CSV exports (see issue #1156 ).
2025-08-12 07:14:59 +02:00
oliexdev
172cd8d01c
Enable database schema export and update Fastlane configuration
2025-08-11 14:19:09 +02:00
oliexdev
54b168d879
Implemented Bluetooth user interaction handling
2025-08-09 21:01:13 +02:00
oliexdev
8b77750ff0
Add DatabaseProvider for data sharing and add real-time sync triggers with openScale sync
2025-08-06 15:41:52 +02:00
oliexdev
9e045553ef
Add ProGuard rules and OSS build type
2025-08-06 10:25:34 +02:00
oliexdev
5a87f1452b
Add new Bluetooth string resources and use them
2025-08-05 17:54:50 +02:00
oliexdev
646d5a8f0c
Recalculate derived values after CSV import
2025-08-04 08:04:54 +02:00
oliexdev
c44080aa17
Make more MeasurementTypes visible in the default table and chart views
2025-08-03 19:03:02 +02:00
oliexdev
5dcc41d784
Initial integrated the existing Java Bluetooth scale classes and Bluetooth libraries from the Java-based openScale project.These components have been integrated into openScale 3.0 project structure but have not yet been migrated to Kotlin. Further work will be required to refactor and update this code to align with Kotlin best practices and the overall project architecture.
2025-08-03 17:54:25 +02:00
oliexdev
3a0840fdf2
make line chart point a little bit transparent and smaller
2025-08-03 14:51:11 +02:00
oliexdev
e3698828ad
Use during csv import already existing MeasurementTypes
2025-08-03 14:35:46 +02:00