feat: Implement command queue for BLE command handling

- Added BleCommandQueue to manage command serialization and responses in BleCommandSender.
- Updated writeData, writeDataAndWaitForAck, and writeDataAndWaitForResponse methods to utilize the command queue.
- Enhanced BleResponseHandler to complete commands based on responses received from the BLE device.
- Introduced new commands for channel management, including getChannel and setChannel.
- Created LocationTrailLayer and TrailControls widgets for displaying and managing location trails on the map.
- Added PermissionRequestDialog to handle location permission requests on app startup.
- Updated LocationTrackingService to allow GPS tracking without a BLE connection.
This commit is contained in:
Janez T
2025-10-18 21:12:02 +02:00
parent f88c9cfdd3
commit c50a260263
35 changed files with 1854 additions and 59 deletions

View File

@@ -51,6 +51,10 @@ class AppLocalizationsEn extends AppLocalizations {
String get locationPermissionPermanentlyDenied =>
'Location permission permanently denied. Please enable in Settings.';
@override
String get locationPermissionRequired =>
'Location permission is required for GPS tracking and team coordination. You can enable it later in Settings.';
@override
String get locationServicesDisabled =>
'Location services are disabled. Please enable them in Settings.';
@@ -701,6 +705,9 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get rooms => 'Rooms';
@override
String get channels => 'Channels';
@override
String get cacheStatistics => 'Cache Statistics';