Commit Graph

93 Commits

Author SHA1 Message Date
Janez T
0092bad3bf refactor: Clean up unused variables and comments in AppProvider and DeviceConfigScreen 2025-10-22 12:02:44 +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
596ae6c5a0 feat: Configure default public channel with well-known secret and enhance channel message handling 2025-10-18 23:29:47 +02:00
Janez T
5315e58247 feat: Enhance message synchronization with response handling and improve logging in MessagesTab 2025-10-18 23:05:00 +02:00
Janez T
27ed4b0486 Refactor logging to use debugPrint for better performance in debug mode
- Updated all print statements in services and widgets to use debugPrint.
- This change improves logging performance and ensures that debug messages are only shown in debug builds.
- Removed unnecessary transitive dependencies from pubspec.lock.
- Cleaned up pubspec.yaml by removing integration_test from dev_dependencies.
2025-10-18 22:50:57 +02:00
Janez T
198cee685a feat: Enhance BLE response handling with detailed logging and echo detection improvements 2025-10-18 22:47:35 +02:00
Janez T
52b2f4ede1 Add localization support for German, Spanish, French, and Italian
- Updated localization files for French, Croatian, Italian, Slovenian to include translations for German, Spanish, French, and Italian.
- Added new methods for handling drawing messages sent to the public channel in multiple languages.
- Enhanced the Contact model to identify public channels using a dedicated method.
- Implemented echo detection for public channel messages, including tracking and reporting of echoes.
- Updated BLE response handling to support echo detection and tracking of sent messages.
- Modified UI components to reflect new localization strings and echo statuses.
2025-10-18 22:39:26 +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
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
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
c6c56f858d feat: Add localization support for contact and SAR marker display names 2025-10-16 21:09:33 +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
09e53e579a feat: Implement notification service for SAR messages and add localization support 2025-10-16 16:31:35 +02:00
Janez T
d69355a9b8 feat: Add localized delivery status and time ago for messages 2025-10-16 16:10:25 +02:00
Janez T
f95edcb477 fix: Update import path for AppLocalizations in CompassSarList widget 2025-10-16 16:07:22 +02:00
Janez T
01a1bbec44 Refactor localization in UI components and error messages
- Updated various UI components to utilize AppLocalizations for better internationalization support.
- Replaced hardcoded strings with localized strings in home_screen.dart, ble_connection_manager.dart, contact_tile.dart, room_login_sheet.dart, compass widgets, and sar_update_sheet.dart.
- Improved user feedback messages by integrating localization for actions like pinging contacts, displaying connection statuses, and error notifications.
- Enhanced the clarity of UI elements by ensuring all text is translatable, improving the overall user experience for non-English speakers.
2025-10-16 15:39:48 +02:00
Janez T
1056380f3a Add localization support for various UI elements and messages
- Integrated localization for alert dialogs, snack bars, and button labels in PacketLogScreen and SettingsScreen.
- Updated location tracking service messages to use localized strings.
- Enhanced ContactTile and DirectMessageSheet with localized text for user interactions.
- Implemented localization in DrawingLayer and DrawingToolbar for map-related actions.
- Updated SAR Update Sheet to utilize localized strings for user prompts and actions.
- Ensured consistent use of localization across all relevant widgets and screens.
2025-10-16 15:19:05 +02:00
Janez T
9def8daf0c feat: Refactor MaterialApp initialization into a separate method for improved readability 2025-10-16 14:57:11 +02:00
Janez T
3a8eac2ec2 feat: Enhance home screen status bar with connection indicators and improved layout 2025-10-16 14:54:25 +02:00
Janez T
4c8e0e5d61 Add Croatian and Slovenian localizations, implement locale preferences, and update settings screen
- Created `app_localizations_hr.dart` and `app_localizations_sl.dart` for Croatian and Slovenian translations.
- Added `app_sl.arb` file for Slovenian localization strings.
- Enhanced `main.dart` to support locale selection and initialization.
- Updated `home_screen.dart` and `settings_screen.dart` to handle locale changes and display current language.
- Implemented `locale_preferences.dart` service for managing locale settings using SharedPreferences.
- Modified `pubspec.yaml` to include `flutter_localizations` and enable localization file generation.
2025-10-16 14:42:43 +02:00
Janez T
95333a13b8 feat: Refactor home screen layout to improve button visibility and RX/TX indicators 2025-10-16 14:29:15 +02:00
Janez T
c05ae8de89 feat: Enhance home screen layout with RX/TX indicators and device config button 2025-10-16 14:26:48 +02:00
Janez T
9ab5469759 feat: Add RX/TX indicators preference with toggle in settings 2025-10-16 14:25:15 +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
bf4305bdb3 feat: Enhance BLE connection strength indicator with RSSI display and adjust spacing 2025-10-16 13:53:08 +02:00
Janez T
38cda87841 feat: Enhance button styling in direct message sheet for improved visibility 2025-10-16 13:45:52 +02:00
Janez T
520f343261 feat: Remove manual location update functionality and improve password handling in room login 2025-10-16 13:44:35 +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
5a096c048e feat: Implement compact JSON handling for map drawings and add chat notifications for sent/received drawings 2025-10-15 22:45:30 +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
6ee1c9ae79 feat: Update color handling in map drawings and enhance message sync functionality 2025-10-15 22:13:15 +02:00
Janez T
3651f53ef2 feat: Add drawing functionality with line and rectangle support, including toolbar and layer integration 2025-10-15 22:04:23 +02:00
Janez T
aab79a56ea feat: Implement advertisement path tracking with location history and UI integration 2025-10-15 21:59:04 +02:00
Janez T
6be182e20a feat: Add new contact and message tracking features, including unread status and removal functionality 2025-10-15 21:49:33 +02:00
Janez T
2849ab92aa feat: Enhance message display with rich sender names and replace SnackBars with ToastLogger for notifications 2025-10-15 20:15:13 +02:00
Janez T
f5a6e1f9ab Fixes 2025-10-15 19:57:10 +02:00
Janez T
24234e7000 feat: Implement smart ping with automatic fallback and enhance telemetry handling 2025-10-15 19:37:37 +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
3f03b2e789 feat: Add heading accuracy information and warning display in DetailedCompassDialog 2025-10-15 15:26:42 +02:00
Janez T
f76cd227e1 feat: Adjust padding in SAR Update Sheet for keyboard visibility 2025-10-15 15:19:58 +02:00
Janez T
52efa03d32 feat: Add message deletion functionality with confirmation dialog and options 2025-10-15 15:04:09 +02:00