From 0165d776652eda89cd47c0cc33ccc3cbda08af16 Mon Sep 17 00:00:00 2001 From: Benjamin Pasero Date: Fri, 13 Feb 2026 19:47:30 +0100 Subject: [PATCH] Layout: regression in view actions placement (fix #292481) (#295226) --- .../parts/auxiliarybar/auxiliaryBarPart.ts | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.ts b/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.ts index 82738560d38..d32082b4e12 100644 --- a/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.ts +++ b/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.ts @@ -151,7 +151,7 @@ export class AuxiliaryBarPart extends AbstractPaneCompositePart { private onDidChangeAutoHideViewContainers(e: { before: number; after: number }): void { // Only update if auto-hide is enabled and composite bar would show const autoHide = this.configurationService.getValue(LayoutSettings.ACTIVITY_BAR_AUTO_HIDE); - if (autoHide && (this.configuration.position !== ActivityBarPosition.HIDDEN)) { + if (autoHide && (this.configuration.position === ActivityBarPosition.TOP || this.configuration.position === ActivityBarPosition.BOTTOM)) { const visibleBefore = e.before > 1; const visibleAfter = e.after > 1; if (visibleBefore !== visibleAfter) { @@ -266,14 +266,17 @@ export class AuxiliaryBarPart extends AbstractPaneCompositePart { } // Check if auto-hide is enabled and there's only one visible view container - const autoHide = this.configurationService.getValue(LayoutSettings.ACTIVITY_BAR_AUTO_HIDE); - if (autoHide) { - // Use visible composite count from the composite bar if available (considers pinned state), - // otherwise fall back to the tracker's count (based on active view descriptors). - // Note: We access paneCompositeBar directly to avoid circular calls with getVisiblePaneCompositeIds() - const visibleCount = this.visibleViewContainersTracker.visibleCount; - if (visibleCount <= 1) { - return false; + // while the activity bar is configured to be top or bottom. + if (this.configuration.position === ActivityBarPosition.TOP || this.configuration.position === ActivityBarPosition.BOTTOM) { + const autoHide = this.configurationService.getValue(LayoutSettings.ACTIVITY_BAR_AUTO_HIDE); + if (autoHide) { + // Use visible composite count from the composite bar if available (considers pinned state), + // otherwise fall back to the tracker's count (based on active view descriptors). + // Note: We access paneCompositeBar directly to avoid circular calls with getVisiblePaneCompositeIds() + const visibleCount = this.visibleViewContainersTracker.visibleCount; + if (visibleCount <= 1) { + return false; + } } }