Commit Graph

424 Commits

Author SHA1 Message Date
PacoX a8cac76491 resolved conflict and update doc 2026-07-09 09:08:50 +02:00
PacoX 2df17be673 remplace onReorder by onReorderItem 2026-07-09 08:43:55 +02:00
Zach 698a69dc03 Improve path formatting in message bubble to use zero-width space for better visual presentation 2026-07-08 20:43:58 -07:00
Zach 8765d0f4cc Add localization for 'Received a GIF' in multiple languages and update chat UI 2026-07-08 20:38:06 -07:00
zjs81 b8e113d269 Merge pull request #467 from sethoscope/set-repeater-key
Add UI for setting repeater identity keys
2026-07-06 09:23:01 -07:00
Seth Golub e963248e37 Stop repeater identity key search when user navigates away
Terminate a search for a repeater key with a specified prefix if the
user navigates away from the settings screen.

This commit also adds dispose() calls for the new repeater key input
controllers, which were previously omitted.
2026-07-04 18:54:27 -07:00
Zach f4cca2fb1d Add ExportOptions.plist for App Store Connect configuration
- Created a new ExportOptions.plist file to define export settings for app distribution.
- Configured the plist with method, team ID, signing style, symbol upload option, and destination.
2026-07-04 00:45:18 -07:00
zjs81 0f3961f3a2 Merge pull request #461 from ericszimmermann/ez_alternative_maps
Alternative Maps
2026-07-04 00:32:58 -07:00
PacoX 3541b1bbac Fix room login screen 2026-06-24 14:38:35 +02:00
ericz 5ef976b3b5 Add option for automatic zerohop adverts on posision change. 2026-06-23 18:19:22 +02:00
Seth Golub e1a4900dc0 Add UI for setting repeater identity keys
This adds a simple UI in repeater management settings for remotely
setting a repeater's private key. A key can be pasted from an external
key generator, or a random one can be generated here, optionally with a
specified prefix.

If a prefix is specified, searching is done in 30ms batches in order
to keep the UI responsive and show the progress indicator animation
smoothly. Searches can be interrupted. An estimation of search length is
given as expected number of generated key pairs. (A future improvement
would be to observe keys per second performance and give time estimates
based on that.)

When it generates a new private key on your behalf, it can tell you
what the corresponding public key will be. Unfortunately, if you paste
one in from another source, it can't compute the corresponding public
key. This is because the standard Dart crypto library doesn't provide
that capability, nor does it give access to the elliptic curve functions
it implements so we could do it ourselves. Our only recourse would be to
copy the source for all those things, and I didn't think it was worth
it.

This will not check the validity of a pasted key, but the remote
repeater will. It does limit it to the correct length and hexadecimal
charset.

Prefixes are limited to 4 characters. There's no technical reason for
this, but users are unlikely to want more, and I think it would just be
a bad experience to allow more and spin for a very long time. If someone
really wants a longer one, they can use an external generator like they
do now.

Possible TODO: rewrite background processing using isolates.

Closes #142.
2026-06-19 07:27:44 -07:00
PacoX 445a18a83f Fix failed test 2026-06-16 15:01:10 +02:00
HDDen 6492058a04 Merge branch 'dev' into update-pacox-multibyte 2026-06-16 11:53:59 +03:00
zjs81 98a9197cb1 Merge remote-tracking branch 'origin/dev' into test-regions 2026-06-15 22:52:31 -07:00
zjs81 55da952bfd Merge remote-tracking branch 'origin/dev' into test-regions Also added fixes 2026-06-15 22:46:59 -07:00
zjs81 9b4742951d Merge pull request #479 from MrSurly/478-implement-right-click
Issue 478: Implement right click for desktop use
2026-06-15 21:56:13 -07:00
Zach 43f3d439ba Add jni to FFI plugin list for Linux and Windows 2026-06-15 13:12:08 -07:00
Eric Poulsen 5f54a2cd1b dart format 2026-06-13 22:05:46 -07:00
Eric Poulsen e1536c49b1 tap --> secondaryTap, per review comments 2026-06-13 20:43:30 -07:00
Eric Poulsen 6813a72767 Fix null-returning ternaries with if blocks, per code review comments 2026-06-13 20:32:05 -07:00
Eric Poulsen dbd3a40bdc Rename _handleMapTap to _handleMapContextPress, per review comments. 2026-06-13 20:29:36 -07:00
Eric Poulsen 3009036565 Remove white space per code review 2026-06-13 20:27:58 -07:00
Eric Poulsen a1e6f6967c Added support for left-click copy, and snackbar message about copying the data. 2026-06-13 19:30:27 -07:00
Eric Poulsen f34c2a92c3 Add onSecondaryTap to MeshCard and fix right-click on message text bubbles 2026-06-13 19:22:16 -07:00
Eric Poulsen f1478722b0 Fix for right-click on message bubbles (right click didn't work on the actual text of the bubble) 2026-06-13 19:05:52 -07:00
Eric Poulsen c867225073 onSecondaryTap for line_of_sight_map_screen 2026-06-13 16:37:12 -07:00
Eric Poulsen 06285a02ff onSecondaryTap for map_screen 2026-06-13 16:36:55 -07:00
HDDen e92d215582 upd - fix and format 2026-06-14 01:36:49 +03:00
HDDen d61eaaaff1 Merge branch 'dev' into update-pacox-multibyte 2026-06-14 01:12:49 +03:00
ericz ecde5e1109 fix StadiaMaps Dark and add demo. 2026-06-13 20:01:43 +02:00
ericz f548f95e29 merge zjs81/dev: resolve conflicting implementations 2026-06-13 18:06:31 +02:00
zjs81 e38d03a32e Fix battery voltage null check in RepeaterStatusScreen 2026-06-13 02:13:34 -07:00
zjs81 760d8e1db3 Update localization files and improve path map UI
- Added new localization strings for Swedish, Ukrainian, and Chinese languages in app_sv.arb, app_uk.arb, and app_zh.arb respectively.
- Enhanced the path map UI in channel_message_path_screen.dart for better readability and interaction.
- Improved message retry logic in message_retry_service.dart to prevent double-pumping of queues.
- Bumped version number in pubspec.yaml to 9.5.0+13.
- Cleared untranslated strings in untranslated.json to reflect current localization status.
2026-06-13 01:58:42 -07:00
zjs81 becfbedc99 format files 2026-06-13 00:39:13 -07:00
zjs81 5ea6b17b16 feat: enhance MeshCoreConnector with improved timeout calculation and path resolution; add PathHopResolver for better contact resolution 2026-06-13 00:36:45 -07:00
zjs81 3707acb124 Refactor code structure and remove redundant sections for improved readability and maintainability 2026-06-12 22:55:41 -07:00
zjs81 51d6210920 Add shared UI components for mesh application
- Introduced `mesh_ui.dart` with reusable widgets including SectionHeader, MeshCard, StatusChip, StatTile, AvatarCircle, SignalBars, RouteChip, PulseDot, BottomSheetHeader, ErrorRetryCard, and ListEntrance.
- Implemented `path_map_ui.dart` for path map screens, featuring path distance calculations, playback controls, and a summary list of observed paths.
- Created `themed_map_tile_layer.dart` for shared cached map tiles with automatic dark-mode treatment.
2026-06-12 21:04:02 -07:00
HDDen 27695d372a Updated to last dev 2026-06-12 14:44:09 +03:00
HDDen d06a4c1861 Merge branch 'dev' into update-pacox-multibyte 2026-06-12 13:39:09 +03:00
zjs81 26fdf74d69 Refactor UI code for better readability and consistency
- Improved formatting of ListTile icons and text styles in settings_screen.dart, telemetry_screen.dart, usb_screen.dart, gif_picker.dart, path_editor_sheet.dart, repeater_login_dialog.dart, and room_login_dialog.dart for better readability.
- Consolidated TextStyle definitions into single lines where applicable.
- Updated notification_service.dart to enhance readability of notification ID assignment.
- Simplified function signatures in routing_sheet.dart for clarity.
- Cleaned up test assertions in usb_flow_test.dart for conciseness.
- Removed unused translations in untranslated.json to streamline localization files.
2026-06-11 00:28:13 -07:00
zjs81 cba1e5950c feat: add contact UI helpers and path editor for routing management
- Implemented contactTypeIcon and contactTypeColor functions for better UI representation of contact types.
- Created colorForName and firstCharacterOrEmoji functions to enhance contact display.
- Developed PathEditorSheet widget for managing contact paths with a user-friendly interface.
- Introduced RoutingSheet for managing contact routing modes and displaying path history.
- Added a script for generating proof of concept (PoC) payloads for clipboard contact import validation.
2026-06-11 00:07:12 -07:00
PacoX a15f5e94da fix: path formatting in DM mode 2026-06-04 20:26:46 +02:00
HDDen 9d1251f21e Merge branch 'dev' into test-regions 2026-05-31 16:52:27 +03:00
HDDen 0ca96ce5b1 Regions discovery from nearby repeaters 2026-05-31 16:47:22 +03:00
HDDen b72ade1387 Update channel_chat_screen.dart 2026-05-31 00:22:04 +03:00
HDDen 3fc038682c Merge commit 'refs/pull/379/head' of https://github.com/zjs81/meshcore-open into test-regions 2026-05-31 00:06:16 +03:00
PacoX 89360c8bc2 fix channels_screen 2026-05-28 09:18:42 +02:00
ericszimmermann 28df5a97e8 Merge branch 'dev' into ez_alternative_maps 2026-05-28 08:56:54 +02:00
PacoX 2e767730fd Merge branch 'dev' into dev 2026-05-28 08:51:23 +02:00
HDDen 61fb39b9f8 Multibyte: some path fixes
- Validate encoded path hop counts before saving or sending custom paths
- Fix multi-byte path reversal by reversing hops instead of raw bytes
- Decode raw log path lengths using packed path_len format
- Localize path hash mode options and optimize map anchor lookup
2026-05-28 03:17:08 +03:00