From 65160024f7ca7e969c7c9f982162dc2854cd4c41 Mon Sep 17 00:00:00 2001 From: Till JS Date: Mon, 13 Apr 2026 16:45:09 +0200 Subject: [PATCH] feat(workbench): improve fullscreen, scene bar styling, and inline scene creation - PageShell maximized: fill viewport edge-to-edge (max-width none, z-index 95 above bottom bar, border none), constrain body/header to 48rem centered, Esc exits fullscreen - SceneAppBar: pill-shaped bar and items, match TagStrip font size (0.9375rem), visual group bracket for active scene with separator, tab count on all scenes, inline name input for new scenes instead of modal dialog - SceneRenameDialog: remove icon field, simplify to name-only Co-Authored-By: Claude Opus 4.6 (1M context) --- .../components/page-carousel/PageShell.svelte | 31 ++- .../components/workbench/SceneAppBar.svelte | 255 +++++++++++++----- .../workbench/scenes/SceneRenameDialog.svelte | 68 ++--- .../apps/web/src/routes/(app)/+page.svelte | 26 +- 4 files changed, 242 insertions(+), 138 deletions(-) diff --git a/apps/mana/apps/web/src/lib/components/page-carousel/PageShell.svelte b/apps/mana/apps/web/src/lib/components/page-carousel/PageShell.svelte index e38ae2bf9..7315a37b1 100644 --- a/apps/mana/apps/web/src/lib/components/page-carousel/PageShell.svelte +++ b/apps/mana/apps/web/src/lib/components/page-carousel/PageShell.svelte @@ -5,6 +5,7 @@ -->
{#each scenes as scene (scene.id)} {@const isActive = scene.id === activeSceneId} - - {#if isActive && pages.length > 0} - {#each pages as p (p.id)} - {@const AppIcon = p.icon} + +
- {/each} - + {/each} + +
+ {:else} + - {#if scenes.length > 1} - - {/if} {/if} {/each} - + + {#if creating} +
+ + + +
+ {:else} + + {/if}