diff --git a/src/vs/workbench/contrib/chat/browser/chatListRenderer.ts b/src/vs/workbench/contrib/chat/browser/chatListRenderer.ts index e6ec6bd3ae8..1208e6134c3 100644 --- a/src/vs/workbench/contrib/chat/browser/chatListRenderer.ts +++ b/src/vs/workbench/contrib/chat/browser/chatListRenderer.ts @@ -354,7 +354,15 @@ export class ChatListItemRenderer extends Disposable implements ITreeRenderer { + disposable.dispose(); + this._onDidChangeItemHeight.fire({ element, height: newHeight }); + })); + } } private renderWelcomeMessage(element: IChatWelcomeMessageViewModel, templateData: IChatListItemTemplate) { @@ -381,7 +389,15 @@ export class ChatListItemRenderer extends Disposable implements ITreeRenderer { + disposable.dispose(); + this._onDidChangeItemHeight.fire({ element, height: newHeight }); + })); + } } /** diff --git a/src/vs/workbench/contrib/chat/browser/chatWidget.ts b/src/vs/workbench/contrib/chat/browser/chatWidget.ts index 053278d5af6..7d61828c403 100644 --- a/src/vs/workbench/contrib/chat/browser/chatWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/chatWidget.ts @@ -530,7 +530,7 @@ export class ChatWidget extends Disposable implements IChatWidget { this._register(this.renderer.onDidChangeItemHeight(() => this.layoutDynamicChatTreeItemMode())); } - layoutDynamicChatTreeItemMode(allowRecurse = true): void { + layoutDynamicChatTreeItemMode(): void { if (!this.viewModel) { return; } @@ -554,10 +554,9 @@ export class ChatWidget extends Disposable implements IChatWidget { this.container.offsetWidth ); - if (needsRerender && allowRecurse) { + if (needsRerender) { // TODO: figure out a better place to reveal the last element revealLastElement(this.tree); - this.layoutDynamicChatTreeItemMode(false); } }