feat: vertically center the empty session composer

This commit is contained in:
Diego Imbert
2026-10-09 10:11:59 +02:00
parent f589e5a083
commit d72c57375e
2 changed files with 6 additions and 3 deletions
@@ -758,7 +758,9 @@
<!-- tabindex="-1": clicks on non-focusable chat content must move focus into
the panel, or the Escape-to-stop focus check would wrongly reject them. -->
<div
class="flex flex-col h-full relative outline-none"
class="flex flex-col h-full relative outline-none {starterPrompts && messages.length === 0
? 'justify-center'
: ''}"
tabindex="-1"
bind:this={panelEl}
ondragenter={onPanelDragEnter}
@@ -992,7 +994,8 @@ the panel, or the Escape-to-stop focus check would wrongly reject them. -->
<!-- Same horizontal padding as the transcript above: the composer's edges line up with
the messages rather than sitting closer to the panel edge. -->
<div class="relative {columnClass} pb-2">
<!-- The bottom margin offsets the heading's weight above, so the centred box sits mid-pane. -->
<div class="relative {columnClass} pb-2 {starterPrompts && messages.length === 0 ? 'mb-24' : ''}">
{#if showFlowPendingActionControls}
<div class="absolute -top-10 w-full flex flex-row justify-center gap-2">
<Button
@@ -450,7 +450,7 @@
<div class="flex-1 min-h-0 flex flex-col" use:splitterPointerCapture>
<Splitpanes horizontal={false} class="flex-1 min-h-0 splitter-hidden">
<Pane minSize={25} class="flex flex-col min-h-0 pb-2">
<div class="flex-1 min-h-0 w-full flex flex-col {hasFirstUserMessage ? '' : 'pt-20'}">
<div class="flex-1 min-h-0 w-full flex flex-col">
<AIChat
bind:this={aiChat}
hideHeader