Skip to content

Commit ead9f32

Browse files
authored
Avoid getItemsWidth on chat toolbars when it's not actually used (#286946)
re: #286531 already fixed but this would improve this and all other layout scenarios
1 parent 343e7c3 commit ead9f32

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.ts

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2567,11 +2567,16 @@ export class ChatInputPart extends Disposable implements IHistoryNavigationWidge
25672567
// # #
25682568
// ###########################################################################
25692569

2570-
const executeToolbarWidth = this.cachedExecuteToolbarWidth = this.executeToolbar.getItemsWidth();
2571-
const inputToolbarWidth = this.cachedInputToolbarWidth = this.inputActionsToolbar.getItemsWidth();
25722570
const inputSideToolbarWidth = this.inputSideToolbarContainer ? dom.getTotalWidth(this.inputSideToolbarContainer) : 0;
2573-
const executeToolbarPadding = (this.executeToolbar.getItemsLength() - 1) * 4;
2574-
const inputToolbarPadding = this.inputActionsToolbar.getItemsLength() ? (this.inputActionsToolbar.getItemsLength() - 1) * 4 : 0;
2571+
2572+
const getToolbarsWidthCompact = () => {
2573+
const executeToolbarWidth = this.cachedExecuteToolbarWidth = this.executeToolbar.getItemsWidth();
2574+
const inputToolbarWidth = this.cachedInputToolbarWidth = this.inputActionsToolbar.getItemsWidth();
2575+
const executeToolbarPadding = (this.executeToolbar.getItemsLength() - 1) * 4;
2576+
const inputToolbarPadding = this.inputActionsToolbar.getItemsLength() ? (this.inputActionsToolbar.getItemsLength() - 1) * 4 : 0;
2577+
return executeToolbarWidth + executeToolbarPadding + (this.options.renderInputToolbarBelowInput ? 0 : inputToolbarWidth + inputToolbarPadding);
2578+
};
2579+
25752580
return {
25762581
inputEditorBorder: 2,
25772582
followupsHeight: this.followupsContainer.offsetHeight,
@@ -2581,7 +2586,7 @@ export class ChatInputPart extends Disposable implements IHistoryNavigationWidge
25812586
attachmentsHeight: this.attachmentsHeight,
25822587
editorBorder: 2,
25832588
inputPartHorizontalPaddingInside: 12,
2584-
toolbarsWidth: this.options.renderStyle === 'compact' ? executeToolbarWidth + executeToolbarPadding + (this.options.renderInputToolbarBelowInput ? 0 : inputToolbarWidth + inputToolbarPadding) : 0,
2589+
toolbarsWidth: this.options.renderStyle === 'compact' ? getToolbarsWidthCompact() : 0,
25852590
toolbarsHeight: this.options.renderStyle === 'compact' ? 0 : 22,
25862591
chatEditingStateHeight: this.chatEditingSessionWidgetContainer.offsetHeight,
25872592
sideToolbarWidth: inputSideToolbarWidth > 0 ? inputSideToolbarWidth + 4 /*gap*/ : 0,

0 commit comments

Comments
 (0)