Commit Graph

141 Commits

Author SHA1 Message Date
Janez T
f6155913a1 feat: Increment project version to 43 and update related files 2025-10-27 22:50:01 +01:00
Janez T
b398dc9aa9 feat: Update project version to 42 and enhance advertisement handling in BLE service 2025-10-27 22:47:04 +01:00
Janez T
8c05c331e2 feat: Refine measurement mode behavior and add ruler button in simple mode 2025-10-27 22:38:42 +01:00
Janez T
f707e2233b feat: Add zoom level clamping for WMS layer switching and improve message filtering in simple mode 2025-10-27 22:28:46 +01:00
Janez T
b4bbaf3109 feat: Implement language-based filtering for WMS layers in Slovenian and Croatian 2025-10-27 21:55:00 +01:00
Janez T
a4dc85d130 Add WMS support and measurement functionality
- Implemented WMS layer handling for Slovenian aerial imagery and overlays for cadastral parcels and forest roads.
- Added distance measurement feature allowing users to measure distances on the map with long press interactions.
- Updated localization files for Croatian, Italian, and Slovenian languages to include new measurement and WMS-related strings.
- Enhanced the map layer model to support WMS-specific properties.
- Introduced a new tile provider for debugging WMS requests.
- Updated the drawing toolbar to include measurement mode and clear measurement functionality.
- Integrated SharedPreferences to persist overlay visibility states across app sessions.
- Added utility functions for handling the Slovenian coordinate reference system (EPSG:3794).
2025-10-27 21:49:58 +01:00
Janez T
a03cc4a363 feat: Add localization for save as template functionality in multiple languages 2025-10-26 18:07:55 +01:00
Janez T
0f9974c1e9 feat: Implement update checker and dialog for available app updates with localization support 2025-10-26 17:47:37 +01:00
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
cec092b8c0 feat: Add functionality to save SAR messages as templates with corresponding localization 2025-10-26 17:22:39 +01:00
Janez T
a6fbc10221 feat: Enhance contact telemetry updates with last seen timestamp and improve message bubble UI for SAR and drawing indicators 2025-10-26 17:04:25 +01:00
Janez T
b8147e904c feat: Update Cayenne LPP GPS encoding/decoding to use 3-byte signed big-endian format 2025-10-26 16:57:21 +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
f15bad5715 feat: Sync drawings on app startup after provider initialization 2025-10-23 20:52:43 +02:00
Janez T
9d923f8118 Add drawing sharing functionality and localization updates
- Implemented sharing options for drawings, including sharing to a public channel and specific rooms.
- Added confirmation dialogs for deleting drawings and sharing drawings.
- Enhanced the drawing toolbar to display a list of user's drawings with options to share or delete.
- Updated localization files for English, Spanish, French, Croatian, Italian, German, Slovenian, and other languages to include new strings related to drawing sharing and management.
- Introduced syncing of drawing messages with the DrawingProvider to restore missing drawings.
- Improved the drawing minimap preview to display a small preview of drawings in the toolbar.
2025-10-23 20:50:14 +02:00
Janez T
19603a1ad9 feat: Add toast logger import to drawing toolbar for improved logging 2025-10-23 20:31:19 +02:00
Janez T
795f223fe8 feat: Add debug logging for drawing navigation and toolbar actions 2025-10-23 20:29:51 +02:00
Janez T
1688d6f538 feat: Enhance message handling for drawings
- Added properties to the Message model to track drawing status and associated drawing ID.
- Updated AppProvider to mark messages as drawings and link them to their respective drawing IDs.
- Enhanced DrawingProvider to manage received drawings and their visibility.
- Implemented navigation to drawings in MapProvider, including dynamic zoom levels based on drawing size.
- Updated MessagesProvider to parse drawing messages and manage linked drawings.
- Enhanced MessagesTab to support drawing message interactions, including navigation and coordinate copying.
- Created DrawingMinimapPreview widget for visual representation of drawings in message bubbles.
- Improved DrawingToolbar to handle sharing of drawings, ensuring only unshared drawings are sent.
- Added utility functions in DrawingMessageParser for extracting drawing metadata.
2025-10-23 20:14:51 +02:00
Janez T
f32667997e feat: Add localization for drawing actions and update related UI tooltips 2025-10-23 19:47:21 +02:00
Janez T
0a8d9a4dca feat: Update drawing menu to use SingleChildScrollView for better layout and localization 2025-10-23 19:42:59 +02:00
Janez T
d64c78542b refactor: Remove unnecessary toast notifications and improve code formatting 2025-10-23 19:36:24 +02:00
Janez T
200e506df8 feat: Add drawing tools localization and update SAR message handling 2025-10-23 19:33:35 +02:00
Janez T
98cda8c976 feat: Enhance SAR message handling with color indexing and localization
- Added `sarColorIndex` to `Message` and `SarMarker` models to support color indexing for SAR markers.
- Introduced a standard color palette in `SarTemplate` and methods to retrieve colors based on index.
- Updated `SarTemplate` to include localization for template names.
- Modified `SarUpdateSheet` and message sending logic to include color index in SAR messages.
- Enhanced `SarMessageParser` to support both old and new message formats with color index.
- Updated UI components to reflect changes in SAR marker color handling based on the new color index.
- Improved sample data generation to utilize localized strings for better testing and demonstration.
2025-10-23 19:17:13 +02:00
Janez T
b70eed1bf2 fix: Update core library desugaring dependency to version 2.1.4 2025-10-22 21:44:55 +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
9a7e0da9bf fix: Remove Android App Bundle build and upload steps from CI workflow 2025-10-22 20:55:11 +02:00
Janez T
39c95ced95 feat: Add Linux desktop build support to CI/CD workflow
Add build-linux job to compile Linux x64 desktop application and
integrate it into the R2 upload and release workflows.

Changes:
- New build-linux job: Builds Flutter Linux desktop app with GTK-3
- Archives Linux build as tar.gz for distribution
- Added Linux artifact download in upload-to-r2 job
- Updated artifact preparation to copy Linux archives
- Added Linux download card (🐧) to generated index.html
- Included Linux artifacts in GitHub releases
- Added Linux to download summary in workflow output

The Linux build produces MeshCore-SAR-Linux.tar.gz containing the
compiled application bundle ready for x64 Linux systems.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-22 20:44:36 +02:00
Janez T
963bd8a8aa fix: Move checkout step before artifact downloads in R2 upload job
The actions/checkout@v4 step was running after downloading artifacts,
causing it to wipe out the downloaded files. This resulted in empty
build directories and missing artifacts in the index.html.

By moving checkout to the beginning of the upload-to-r2 job, artifacts
are downloaded after the repository is cloned, preserving all build
files for proper R2 upload.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-22 20:39:34 +02:00
Janez T
07f45005c5 fix: Enhance artifact copying logic to skip missing directories without failing the build 2025-10-22 20:20:27 +02:00
Janez T
0955d0feab fix: Improve artifact handling by removing old files and selecting the latest builds 2025-10-22 20:05:27 +02:00
Janez T
18cbdf678d fix: Allow artifact index and manifest generation to continue on error 2025-10-22 19:27:37 +02:00
Janez T
3d678151af fix: Allow artifact preparation to continue on error during upload 2025-10-22 19:26:56 +02:00
Janez T
6046c97d73 fix: Ensure optional artifact absence does not fail the build step 2025-10-22 19:26:42 +02:00
Janez T
51fe2ee016 fix: Improve artifact verification and handling in CI workflow 2025-10-22 19:14:00 +02:00
Janez T
581521ff2e feat: Enhance artifact downloading and uploading process in CI workflow 2025-10-22 17:33:48 +02:00
Janez T
049199fdfb feat: Enhance artifact handling in CI workflow with verification and manifest generation 2025-10-22 17:18:50 +02:00
Janez T
0d12ca0ae7 feat: Add download page details and structure for build artifacts in R2 setup documentation 2025-10-22 16:52:17 +02:00
Janez T
2e8f4ed6e0 fix: Correctly set BASE_URL for unstable build artifacts in GitHub Actions workflow 2025-10-22 12:21:11 +02:00
Janez T
5b6b606b0e feat: Add Fastlane TestFlight setup documentation for CI/CD pipeline 2025-10-22 12:20:56 +02:00
Janez T
01c7169a33 feat: Add Cloudflare R2 setup documentation and update CI/CD workflow for artifact uploads 2025-10-22 12:11:26 +02:00
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