Skip to content

Let a placed handover be moved before the rest are placed - #71

Merged
aquasolterra merged 1 commit into
mainfrom
track-import-select-handover
Sep 18, 2026
Merged

aquasolterra merged 1 commit into
mainfrom
track-import-select-handover

Conversation

@aquasolterra

Copy link
Copy Markdown
Member

When a recording is imported across several entries, the screen asks for each handover in turn. Until now every tap placed the next open handover, so a badly placed one could only be corrected after all the others were placed, and then only through "move the nearest", which could pick its neighbour.

Change

One rule throughout: a tap on the map places the selected handover.

  • A row of numbered chips under the map ("Handover 1", "Handover 2", …) shows which handover is selected and whether each is placed; tapping a chip selects it.
  • The marks on the map are numbered, and the selected one is drawn larger.
  • After a tap the selection advances to the next open handover; once none is open it stays put, so another tap refines the one just placed.
  • The "nearest" rule is gone.
  • Snapping keeps a handover between the nearest placed handovers on either side (not just its immediate neighbours), since with a free selection the adjacent one may still be open.
  • Side fix: with nothing to ask (a single leg), the summary line is no longer printed twice.

The selection lives in the panel, not on the map: tappable marks were tried before and lose the gesture arena to flutter_map's own onTap.

Tests

Two new widget tests in test/track_import_screen_test.dart: moving handover 1 while handover 2 is still open, and refining the last placed handover after all are placed. flutter analyze is clean; the full suite passes. Not yet tried on a device.

Docs: AGENTS.md, docs/features.md, CHANGELOG.md.

🤖 Generated with Claude Code

Importing a recording across several entries asks for each handover in
turn, and every tap placed the next open one, so a handover placed badly
could only be corrected once all the others were placed, and then via
"the nearest one", which could be its neighbour.

Now one rule holds throughout: a tap places the selected handover. The
selection is a numbered chip under the map, matched by a larger numbered
mark on it; it advances to the next open handover after a tap and stays
put once none is open, so a second tap refines the one just placed.
Snapping keeps a handover between the nearest placed ones on either side,
since the one next to it may now still be open.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@codecov

codecov Bot commented Sep 18, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 97.95918% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
...features/map/presentation/track_import_screen.dart 97.95% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

@aquasolterra
aquasolterra merged commit b884852 into main Sep 18, 2026
5 checks passed
@aquasolterra
aquasolterra deleted the track-import-select-handover branch September 18, 2026 19:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant