Skip to content

Map: Forget room action on the map panel - #28

Merged
MHohlios merged 2 commits into
mainfrom
wiffletree/map-forget-room-action-on-the-map-panel
Nov 3, 2026
Merged

MHohlios merged 2 commits into
mainfrom
wiffletree/map-forget-room-action-on-the-map-panel

Conversation

@MHohlios

@MHohlios MHohlios commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Why

A wrongly mapped room had no way out: walking back in didn't fix it, and nothing in the app could remove it. The core already had a tested LiveMap::forget, but nothing called it.

What changed

  • Core: MapEdit::Forget { room } (session.rs), handled in session/engine.rs edit_map by self.map.forget(&[room]). The next settle saves and publishes it like any map change.
  • Desktop: new map_view/forget.rs. With a room selected on the map panel, a "Forget room" button sits beside "Pick to join". It's shown even when picking isn't possible.
  • Pressing it asks once, inline: "Forget ? Its paths, note and features go with it. Walk in again to map it fresh." Cancel and Forget (danger color) follow, with focus on Cancel. Escape, Cancel, another selection or opening Review backs out.
  • After Forget, the selection clears and the pill reads "Forgot · walk in to map it again" (a new JoinNote::Forgot variant).
  • The Escape binding has a row in the shortcuts settings, and the macOS accessibility check covers the new controls.
  • The Room panel is untouched. One room at a time, with a confirmation and no Undo, as approved in the mockup.

Tests

  • Core rules::a_forgotten_room_leaves_the_map_and_stays_gone_next_session.
  • Desktop map_view::forget::tests::cancel_keeps_the_room_and_forget_tells_the_session, escape_backs_out_of_the_question, selecting_another_room_backs_out_of_the_question.
  • cargo fmt --check, cargo clippy --workspace --all-targets and cargo test --workspace pass. mudling-desktop --synthetic --ax-check passes all 79 checks.

Reviewed with Wiffletree: 1 full review and 1 re-check, 2 rounds (Tests, Claude, Style)

mhohlios added 2 commits November 2, 2026 22:37
A selected room gets a Forget room button beside Pick to join. It asks
once, inline, then sends MapEdit::Forget, which the session runs through
LiveMap::forget. The pill says which room went and that walking in maps
it again.
The macOS accessibility check now finds Forget room, the question's
Cancel and Forget, and follows focus into the question and back. The
Forget test reads the pill's own text, and the pill's and the room
row's comments say what they now hold.
@MHohlios
MHohlios merged commit 1625b48 into main Nov 3, 2026
6 checks passed
@MHohlios
MHohlios deleted the wiffletree/map-forget-room-action-on-the-map-panel branch November 3, 2026 11:53
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