studio/frontend: stop showing Generating spinner on empty welcome view (#5530)

The spinner inside ThreadWelcome subscribed to the global
generatingStatus from chat-runtime-store, so any in-flight warmup
(or stale leak from a prior run) surfaced Generating on the empty
Chat with your model surface, even while the user was still typing.
On the normal path the welcome view is gone the moment a message
is submitted, and the assistant bubble already renders its own
per-message GeneratingIndicator. Remove the welcome-screen spinner,
its component, and the now-unused LoaderIcon import.
This commit is contained in:
Michael Han 2026-05-18 03:46:37 -07:00 committed by GitHub
commit bf4d3f7b85
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -66,7 +66,6 @@ import {
HeadphonesIcon,
LightbulbIcon,
LightbulbOffIcon,
LoaderIcon,
MicIcon,
MoreHorizontalIcon,
RefreshCwIcon,
@ -246,7 +245,6 @@ const ThreadWelcome: FC<{ hideComposer?: boolean }> = ({ hideComposer }) => {
Run GGUFs, safetensors, vision and audio models
</p>
</div>
<GeneratingSpinner />
{!hideComposer && <ComposerAnimated />}
</div>
</div>
@ -254,21 +252,6 @@ const ThreadWelcome: FC<{ hideComposer?: boolean }> = ({ hideComposer }) => {
);
};
const GeneratingSpinner: FC = () => {
const status = useChatRuntimeStore((s) => s.generatingStatus);
if (!status) {
return null;
}
return (
<div className="mx-auto flex w-full max-w-(--thread-max-width) items-center justify-center py-2">
<div className="flex items-center gap-2 text-xs text-muted-foreground">
<LoaderIcon className="size-3.5 animate-spin" />
<span>Generating</span>
</div>
</div>
);
};
const ComposerAnimated: FC<{ disabled?: boolean }> = ({ disabled }) => {
return (
<div className="relative mx-auto min-w-0 w-full max-w-(--thread-max-width)">