diff --git a/src/sql/base/browser/ui/table/plugins/headerFilter.plugin.ts b/src/sql/base/browser/ui/table/plugins/headerFilter.plugin.ts index adb9cf3f6f..4762bb68e8 100644 --- a/src/sql/base/browser/ui/table/plugins/headerFilter.plugin.ts +++ b/src/sql/base/browser/ui/table/plugins/headerFilter.plugin.ts @@ -60,7 +60,7 @@ export class HeaderFilter { .subscribe(this.grid.onKeyDown, (e: DOMEvent) => this.handleKeyDown(e as KeyboardEvent)); this.grid.setColumns(this.grid.getColumns()); - this.disposableStore.add(addDisposableListener(document.body, 'mousedown', e => this.handleBodyMouseDown(e))); + this.disposableStore.add(addDisposableListener(document.body, 'mousedown', e => this.handleBodyMouseDown(e), true)); this.disposableStore.add(addDisposableListener(document.body, 'keydown', e => this.handleKeyDown(e))); } @@ -80,8 +80,6 @@ export class HeaderFilter { private handleBodyMouseDown(e: MouseEvent): void { if (this.$menu && this.$menu[0] !== e.target && !jQuery.contains(this.$menu[0], e.target as Element)) { this.hideMenu(); - e.preventDefault(); - e.stopPropagation(); } } diff --git a/src/sql/workbench/contrib/query/browser/gridPanel.ts b/src/sql/workbench/contrib/query/browser/gridPanel.ts index 8f3097671a..1085adc10e 100644 --- a/src/sql/workbench/contrib/query/browser/gridPanel.ts +++ b/src/sql/workbench/contrib/query/browser/gridPanel.ts @@ -528,7 +528,7 @@ export abstract class GridTableBase extends Disposable implements IView { })); if (this.enableFilteringFeature) { this.filterPlugin = new HeaderFilter(this.contextViewService); - attachTableFilterStyler(this.filterPlugin, this.themeService); + this._register(attachTableFilterStyler(this.filterPlugin, this.themeService)); this.table.registerPlugin(this.filterPlugin); } if (this.styles) {