From 2ecae465415c38d99ed3baf9c6a81e189bb6a8b7 Mon Sep 17 00:00:00 2001 From: Wassim SAMAD Date: Wed, 26 Aug 2026 09:33:51 -0400 Subject: [PATCH] Level pill: no ground-floor delete; hide compass in studio MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The floating level selector's kebab offered Delete for the ordinal-0 ground floor — the vertical model's zero anchor — while the site panel and command palette already guard it; disable it with the same rule and explanatory title. The floorplan compass portaled into the viewer area outlived the studio stage overlays (gallery, materials, item builder); gate it on the edit workspace like the rest of the editor chrome. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01SrRkPvd6AogVAbt3PNeLAw --- packages/editor/src/components/editor/floorplan-panel.tsx | 6 +++++- .../editor/src/components/ui/floating-level-selector.tsx | 7 ++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/editor/src/components/editor/floorplan-panel.tsx b/packages/editor/src/components/editor/floorplan-panel.tsx index 2fef770bc..98a473458 100644 --- a/packages/editor/src/components/editor/floorplan-panel.tsx +++ b/packages/editor/src/components/editor/floorplan-panel.tsx @@ -5092,6 +5092,9 @@ export function FloorplanPanel({ if (building?.type !== 'building') return false return building.children.some((cid) => state.nodes[cid]?.type === 'level') }) + // The studio workspace (renders / materials / item builder) is a clean + // stage — editor viewport chrome, compass included, stays out of it. + const isStudioWorkspace = useEditor((s) => s.workspaceMode === 'studio') const elevators = useScene( useShallow((state) => { const building = currentBuildingId ? state.nodes[currentBuildingId] : null @@ -11136,7 +11139,8 @@ export function FloorplanPanel({ - {(levelNode?.type === 'level' || hasAmbientBuildingLevel) && + {!isStudioWorkspace && + (levelNode?.type === 'level' || hasAmbientBuildingLevel) && (compassHost ? ( createPortal( )}