Skip to content

Mission-planning: Enhance mission creation and editing workflow#2541

Merged
ArturoManzoli merged 7 commits into
bluerobotics:masterfrom
ArturoManzoli:2445-fix-survey-polygons-ux
Mar 27, 2026
Merged

Mission-planning: Enhance mission creation and editing workflow#2541
ArturoManzoli merged 7 commits into
bluerobotics:masterfrom
ArturoManzoli:2445-fix-survey-polygons-ux

Conversation

@ArturoManzoli

@ArturoManzoli ArturoManzoli commented Mar 24, 2026

Copy link
Copy Markdown
Contributor

Survey editing

  • Make all surveys in the mission history editable, not just the latest one;
  • Persist survey edits across boots and mode changes;

Survey operations

  • Add ability to swap a survey's entry and exit waypoints via the context menu;
  • Add ability to insert a survey between existing waypoints in the mission path;

Undo system

  • Improve undo functionality with dedicated survey polygon undo stack;
  • Fix spurious vertex creation when dragging a survey polygon to reposition it;

UI polish

  • Prevent the scan-direction dial from appearing off-screen when surveys are near viewport edges;
  • Add a reusable RadialMenu component for radial/pie-style context menus

Relevant to #2516
Close #2445
Close #2446
Close #1349
Close #2052

Signed-off-by: Arturo Manzoli <arturomanzoli@gmail.com>
…changes

Signed-off-by: Arturo Manzoli <arturomanzoli@gmail.com>
Signed-off-by: Arturo Manzoli <arturomanzoli@gmail.com>
Signed-off-by: Arturo Manzoli <arturomanzoli@gmail.com>
Made-with: Cursor
Signed-off-by: Arturo Manzoli <arturomanzoli@gmail.com>
Made-with: Cursor
@ArturoManzoli
ArturoManzoli force-pushed the 2445-fix-survey-polygons-ux branch from e27269f to 1434d91 Compare March 24, 2026 18:03
@ArturoManzoli
ArturoManzoli marked this pull request as ready for review March 24, 2026 18:03

@ES-Alexander ES-Alexander left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only had time for a brief test, and a skim through the code.

From that testing, things seem to be generally functioning as expected - nice! :-)

Some minor issues:

  1. If the survey menu is left / up from the survey then it's appearing quite far away
    Image
    Image
  2. In the top left corner, the survey menu can still end up partly out of the screen
    Image
  3. Possibly out of scope, but the right click context menu for the map can also go off the screen at the bottom
    Image
  4. The tiny arrows for showing the redo and mission load buttons seem hard to use / understand
    • I think it makes more sense to move the hide/show mission estimates config into the mission settings, and add an icon to hide mission estimates on the actual mission estimates widget, and then use the extra space to just have the undo/redo | save/load | delete | settings menu options in full
    Image

Comment thread src/views/MissionPlanningView.vue Outdated
if (isCreatingSurvey.value) return

const snapshot = missionStore.popRedoSnapshot()
if (!snapshot) return

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should there be some kind of warning here for the user, that the redo stack is empty?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added the warning, even though this return was a second layer of protection. I don't think this will be triggered on a normal situation

Comment thread src/views/MissionPlanningView.vue Outdated
</template>
</v-tooltip>
<div v-if="missionStore.currentPlanningWaypoints.length > 0" class="speed-dial-group">
<v-tooltip location="top" text="Undo (Ctrl+Z)">

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be good if this could say Cmd+Z for Mac, or use the command symbol (⌘). Same for the redo case.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed

@ArturoManzoli
ArturoManzoli force-pushed the 2445-fix-survey-polygons-ux branch from 1434d91 to c93cbe2 Compare March 26, 2026 12:04
@ArturoManzoli

Copy link
Copy Markdown
Contributor Author

Only had time for a brief test, and a skim through the code.

From that testing, things seem to be generally functioning as expected - nice! :-)

Some minor issues:

  1. If the survey menu is left / up from the survey then it's appearing quite far away

Fixed. Now its under the pointer's edge unless too close to the edges, where it opens a little closer to the screen's center.

  1. In the top left corner, the survey menu can still end up partly out of the screen

Fixed

  1. Possibly out of scope, but the right click context menu for the map can also go off the screen at the bottom

It was actually on the scope. Fixed too

  1. The tiny arrows for showing the redo and mission load buttons seem hard to use / understand

Indeed, that wasn't the best layout. Moved the mission estimates hide button to its container and added a switch to the mission options menu.

@ES-Alexander ES-Alexander left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Noting that I haven't looked through the code super closely - I've mostly just tested functionality.
Approving because I don't expect these remaining fixes need re-testing.

  1. With a turnaround distance specified, it's possible to undo into a state where just the turnaround lines are shown, during survey creation:
    Image

    • This would ideally be cleared as part of the undo process, but it still clears fine when enough polygon points are drawn to generate new lines, or if the survey gets cancelled, so it's not a huge deal either way (just feels a bit janky).
  2. When you swap the start and end points, then edit the survey polygon, then generate waypoints, the swapping is forgotten

    • It seems intuitive that it would be maintained, but it's one extra button click after a potentially quite major change to the survey, so again just a small polish point.

Comment thread src/views/MissionPlanningView.vue Outdated

const performUndo = (): void => {
const snapshot = missionStore.popUndoSnapshot()
if (!snapshot) return

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should also have a warning about this, like the redo one.

Comment thread src/views/MissionPlanningView.vue Outdated

const snapshot = missionStore.popRedoSnapshot()
if (!snapshot) {
openSnackbar({ variant: 'error', message: 'No more steps to redo.', duration: 2000 })

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a way to suppress this if the warning is already being shown? If I hold down Cmd+Y until the stack is empty then I get a big spam of warnings - one would be enough.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added the message also to the undo command, and on both, added a trigger to display the message only once per cycle

@ES-Alexander ES-Alexander added the docs-needed Change needs to be documented label Mar 27, 2026
Signed-off-by: Arturo Manzoli <arturomanzoli@gmail.com>
Signed-off-by: Arturo Manzoli <arturomanzoli@gmail.com>
@ArturoManzoli
ArturoManzoli force-pushed the 2445-fix-survey-polygons-ux branch from c93cbe2 to 6a3cabd Compare March 27, 2026 12:11
@ArturoManzoli

Copy link
Copy Markdown
Contributor Author
  1. With a turnaround distance specified, it's possible to undo into a state where just the turnaround lines are shown, during survey creation:

Fixed!

  1. When you swap the start and end points, then edit the survey polygon, then generate waypoints, the swapping is forgotten

Fixed!

@ArturoManzoli
ArturoManzoli merged commit 52fb1a2 into bluerobotics:master Mar 27, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs-needed Change needs to be documented

Projects

None yet

2 participants