diff --git a/packages/dockview-core/src/dockview/components/titlebar/tabsContainer.ts b/packages/dockview-core/src/dockview/components/titlebar/tabsContainer.ts index b96b13dd8..d803884a2 100644 --- a/packages/dockview-core/src/dockview/components/titlebar/tabsContainer.ts +++ b/packages/dockview-core/src/dockview/components/titlebar/tabsContainer.ts @@ -379,7 +379,16 @@ export class TabsContainer !panelObject.api.isActive ); - wrapper.addEventListener('pointerdown', () => { + wrapper.addEventListener('pointerdown', (event) => { + // Check if the click is on a close button or its children + const target = event.target as HTMLElement; + const isCloseButton = target.closest('.dv-default-tab-action') !== null; + + if (isCloseButton) { + // Let the close button handle its own event + return; + } + this.accessor.popupService.close(); tab.element.scrollIntoView(); tab.panel.api.setActive();