diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts b/src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts index de55084d582..d202b99918b 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts @@ -784,14 +784,12 @@ export class ChatWidget extends Disposable implements IChatWidget { * Updates the DOM visibility of welcome view and chat list immediately */ private updateChatViewVisibility(): void { - if (!this.viewModel) { - return; + if (this.viewModel) { + const numItems = this.viewModel.getItems().length; + dom.setVisibility(numItems === 0, this.welcomeMessageContainer); + dom.setVisibility(numItems !== 0, this.listContainer); } - const numItems = this.viewModel.getItems().length; - dom.setVisibility(numItems === 0, this.welcomeMessageContainer); - dom.setVisibility(numItems !== 0, this.listContainer); - this._onDidChangeEmptyState.fire(); } diff --git a/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.ts b/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.ts index 4481014f752..1c67d25dd54 100644 --- a/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.ts +++ b/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.ts @@ -461,9 +461,9 @@ export class ChatViewPane extends ViewPane implements IViewWelcomeDelegate { // Sessions control: stacked if (this.sessionsViewerOrientation === AgentSessionsViewerOrientation.Stacked) { newSessionsContainerVisible = - !!this.chatEntitlementService.sentiment.installed && // chat is installed (otherwise make room for terms and welcome) - (!this._widget || this._widget?.isEmpty()) && // chat widget empty - !this.welcomeController?.isShowingWelcome.get(); // welcome not showing + !!this.chatEntitlementService.sentiment.installed && // chat is installed (otherwise make room for terms and welcome) + (!this._widget || (this._widget.isEmpty() && !!this._widget.viewModel)) && // chat widget empty (but not when model is loading) + !this.welcomeController?.isShowingWelcome.get(); // welcome not showing } // Sessions control: sidebar