Commit Graph

35 Commits

Author SHA1 Message Date
Janez T
0eae963efc chore: Update binary files for iOS Runner app and IPA 2025-10-26 17:33:15 +01:00
Janez T
676f5341b6 feat: Add URL launcher dependency and implement more info button in settings 2025-10-26 17:33:01 +01:00
Janez T
3a20b756fd Add comprehensive tests for DrawingMessageParser and SarMessageParser
- Implement critical string formatting tests for DrawingMessageParser, ensuring correct message creation, parsing, and validation.
- Validate JSON structure, coordinate formatting, and color index preservation in drawing messages.
- Introduce tests for various drawing types, including LineDrawing and RectangleDrawing, with emphasis on output consistency and error handling.
- Add tests for SarMessageParser, covering message creation, parsing, and format validation, including backward compatibility with old formats.
- Ensure proper handling of special characters, empty notes, and extreme coordinate values in SAR messages.
- Validate that messages conform to the CLAUDE.md specification and maintain compactness and efficiency.
2025-10-26 16:51:38 +01:00
Janez T
cc4d666a94 feat: Update project version to 39 in project settings and Info.plist 2025-10-23 20:53:11 +02:00
Janez T
cde6decf06 fix: Update dependencies for file_picker, flutter_local_notifications, and vibration packages 2025-10-22 20:57:02 +02:00
Janez T
53ed690f51 Refactor code for improved readability and consistency across multiple files
- Updated formatting in `drawing_toolbar.dart` for better readability, including breaking long lines and ensuring consistent indentation.
- Enhanced the `recipient_selector_sheet.dart` by adjusting line breaks and improving the layout of text styles.
- Refactored `sar_update_sheet.dart` to improve readability, including restructuring widget layouts and ensuring consistent formatting.
- Cleaned up imports and removed unnecessary lines in `widget_test.dart`.
2025-10-22 09:49:41 +02:00
Janez T
021ce21cbe Refactor SAR marker handling and add template management
- Updated CompassSarList and DetailedCompassDialog to use marker.displayName instead of marker.type.displayName.
- Enhanced DrawingLayer and DrawingMarkersLayer to support simple mode for drawing visibility and interaction.
- Added toggle switches in DrawingToolbar for showing/hiding received drawings and SAR markers.
- Modified MapMarkers to utilize custom emojis and display names for markers.
- Introduced RecipientSelectorSheet for selecting message recipients with search functionality.
- Refactored SarUpdateSheet to use SAR templates instead of marker types, allowing for emoji and name customization.
- Created SarTemplateEditDialog for adding and editing SAR templates with color selection and preview.
2025-10-21 23:44:49 +02:00
Janez T
e9d516b749 feat: Enhance message sending in MessagesTab with message ID and improved status handling 2025-10-20 13:54:07 +02:00
Janez T
da03592980 Add Slovenian localization for trail management and device configuration
- Updated `app_localizations_sl.dart` with new strings for trail management, device information, and error messages.
- Enhanced `app_sl.arb` with corresponding translations for the new strings.
- Refactored `device_config_screen.dart` to utilize localized strings for device information and error handling.
- Modified `map_tab.dart` to remove unused trail stats overlay.
- Improved `ble_response_handler.dart` to include additional debug information for parsed contacts and advertisements.
- Updated `trail_controls.dart` to use localized strings for trail management UI, including trail visibility toggle and confirmation dialogs.
2025-10-18 21:35:47 +02:00
Janez T
00b239ab26 feat: Update project version to 32 and enhance BLE command handling 2025-10-18 21:13:51 +02:00
Janez T
c50a260263 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.
2025-10-18 21:12:02 +02:00
Janez T
f88c9cfdd3 feat: Update permissions and project version, enhance app icons 2025-10-18 15:02:54 +02:00
Janez T
5fd090b5dc feat: Enhance device configuration and location tracking features
- Refetch device info after updating settings in device_config_screen.dart.
- Update map_tab.dart to use singleton instance of LocationTrackingService and streamline location tracking callbacks.
- Modify ble_response_handler.dart to handle contact not found errors and improve error callback structure.
- Enhance location_tracking_service.dart with retry logic for GPS position acquisition and initial position setting without broadcasting.
- Update meshcore_ble_service.dart to track last contact for auto-recovery on errors.
- Improve tile_cache_service.dart error messages and streamline tile download logic.
- Add current GPS location insertion feature in direct_message_sheet.dart with permission checks.
- Update pubspec.lock and pubspec.yaml to include integration_test dependency.
- Add screenshot automation script for iOS and Android devices.
- Create integration test driver for screenshot capturing.
2025-10-18 14:55:41 +02:00
Janez T
3a0bcabdea feat: Add support for offline vector maps using MBTiles
- Introduced new MapLayerType for vector MBTiles.
- Enhanced MapLayer class to handle vector-specific properties.
- Implemented MBTilesService for managing MBTiles files, including import and deletion functionalities.
- Updated MapManagementScreen to allow importing and managing MBTiles files.
- Added UI components for displaying and interacting with MBTiles layers.
- Integrated vector tile rendering in MapTab, supporting dynamic theme loading.
- Updated pubspec.yaml to include necessary dependencies for MBTiles and vector tiles.
2025-10-16 23:35:43 +02:00
Janez T
7f20e5ad36 feat: Bump project version to 21 and update related files 2025-10-16 22:20:03 +02:00
Janez T
16505cbfe4 feat: Update project version to 20, add new permissions for Flutter commands, and upgrade dependencies including share_plus 2025-10-16 22:19:00 +02:00
Janez T
e74ebda54d feat: Update project version to 19, add repeaters filter and theme support, and enhance contact list display 2025-10-16 21:43:19 +02:00
Janez T
58d8ef0dae feat: Implement location tracking service and haptic feedback for device advertising 2025-10-16 21:27:22 +02:00
Janez T
b6283e1c8f Remove old app icons and update Info.plist version; add radio settings localization and improve device configuration UI 2025-10-16 21:01:29 +02:00
Janez T
abca014720 chore: Update project version to 14 in project.pbxproj and Info.plist; enhance connection provider to throttle sync and login requests 2025-10-16 18:07:12 +02:00
Janez T
2a25574860 feat: Update app icons and manifest for improved branding and localization support
- Changed AndroidManifest.xml to use new launcher icon.
- Added new launcher icon images for various resolutions in Android mipmap directories.
- Updated iOS project.pbxproj and Info.plist to version 13.
- Refactored iOS AppIcon asset catalog with new icon sizes and updated Contents.json.
- Modified pubspec.yaml to include flutter_launcher_icons for automatic icon generation.
- Updated web manifest colors for better branding.
- Added new favicon and icon images for web support.
2025-10-16 17:45:19 +02:00
Janez T
5fbde99fa7 chore: Update project version to 12 in project.pbxproj and Info.plist 2025-10-16 16:32:20 +02:00
Janez T
09e53e579a feat: Implement notification service for SAR messages and add localization support 2025-10-16 16:31:35 +02:00
Janez T
9c1922b4fd feat: Update project version to 11 and enhance BLE packet logging with RSSI and SNR information 2025-10-16 14:20:40 +02:00
Janez T
9ae3acb3dc feat: Update project version to 9 and enhance debug print functionality 2025-10-16 14:03:44 +02:00
Janez T
23c439a92e Refactor message handling and enhance BLE connection management
- Cleaned up message formatting in MessagesTab for better readability.
- Improved SAR message parsing to include optional inline messages.
- Updated BLE connection manager to monitor RSSI values and added callback for RSSI updates.
- Adjusted drawing message parser to remove sender name from JSON and extract it from packet metadata.
- Enhanced drawing toolbar to reflect changes in message creation without sender name.
- Ensured consistent error handling and logging across BLE operations.
2025-10-16 13:32:58 +02:00
Janez T
800786ec9c feat: Enhance drawing functionality with sender tracking and sharing capabilities 2025-10-15 22:41:57 +02:00
Janez T
317addba9e feat: Update project version to 5 and adjust fullscreen button position in map tab 2025-10-15 22:16:24 +02:00
Janez T
f5a6e1f9ab Fixes 2025-10-15 19:57:10 +02:00
Janez T
91d9326804 Refactor contacts management and improve path handling
- Updated ContactsProvider to initialize with device public key for filtering out self contacts.
- Added methods to check if a contact has a learned routing path and to get path quality indicators.
- Enhanced AppProvider to initialize ContactsProvider with device public key.
- Modified ConnectionProvider to log path status when sending messages.
- Created ContactStorageService for persisting contacts to local storage.
- Removed import/export functionality from MapManagementScreen.
- Updated UI components in DirectMessageSheet and SarUpdateSheet to use theme colors.
- Removed file_picker dependency from pubspec.yaml and generated plugin registrant.
2025-10-15 19:20:46 +02:00
Janez T
f50b429e34 Add fastlane setup for iOS deployment 2025-10-15 14:31:17 +02:00
Janez T
4fae6e4c55 feat: Implement background location tracking service
- Removed existing app icons from the asset catalog.
- Added new `Contents.json` for asset catalog.
- Updated `Info.plist` to include background modes and task scheduler identifiers.
- Exposed BLE service in `ConnectionProvider` for background tracking.
- Enhanced `MapTab` to support background location tracking with new service.
- Added `BackgroundLocationService` to manage location updates in the background.
- Updated `SettingsScreen` to allow users to configure GPS update distance and toggle background tracking.
- Implemented functionality to send location updates via BLE in `MeshCoreBleService`.
- Updated dependencies in `pubspec.yaml` for background service support.
- Adjusted `TileCacheService` to ensure ObjectBox is initialized only once.
2025-10-14 09:53:21 +02:00
Janez T
22624f64c0 fix: Correct application name and update permissions in configuration files 2025-10-14 01:04:22 +02:00
Janez T
e153218b01 Add flutter_compass and shared_preferences_foundation dependencies; update Info.plist for motion usage description 2025-10-13 23:02:22 +02:00
Janez T
823a163123 initial commit 2025-10-13 22:28:20 +02:00