Skip to content

Commit c1ef5b7

Browse files
committed
Hide terminal hovers when closing panel
Fixes microsoft#101845
1 parent 7d29c80 commit c1ef5b7

3 files changed

Lines changed: 13 additions & 0 deletions

File tree

src/vs/workbench/contrib/terminal/browser/terminalInstance.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -840,6 +840,9 @@ export class TerminalInstance extends Disposable implements ITerminalInstance {
840840
setTimeout(() => this.layout(this._timeoutDimension!), 0);
841841
}
842842
}
843+
if (!visible) {
844+
this._widgetManager.hideHovers();
845+
}
843846
}
844847

845848
public scrollDownLine(): void {

src/vs/workbench/contrib/terminal/browser/terminalView.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,8 @@ export class TerminalViewPane extends ViewPane {
110110
} else {
111111
this.layoutBody(this._bodyDimensions.height, this._bodyDimensions.width);
112112
}
113+
} else {
114+
this._terminalService.getActiveTab()?.setVisible(false);
113115
}
114116
}));
115117

src/vs/workbench/contrib/terminal/browser/widgets/widgetManager.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,15 @@
55

66
import { IDisposable } from 'vs/base/common/lifecycle';
77
import { ITerminalWidget } from 'vs/workbench/contrib/terminal/browser/widgets/widgets';
8+
import { IHoverService } from 'vs/workbench/services/hover/browser/hover';
89

910
export class TerminalWidgetManager implements IDisposable {
1011
private _container: HTMLElement | undefined;
1112
private _attached: Map<string, ITerminalWidget> = new Map();
1213

14+
constructor(@IHoverService private readonly _hoverService: IHoverService) {
15+
}
16+
1317
attachToElement(terminalWrapper: HTMLElement) {
1418
if (!this._container) {
1519
this._container = document.createElement('div');
@@ -25,6 +29,10 @@ export class TerminalWidgetManager implements IDisposable {
2529
}
2630
}
2731

32+
hideHovers(): void {
33+
this._hoverService.hideHover();
34+
}
35+
2836
attachWidget(widget: ITerminalWidget): IDisposable | undefined {
2937
if (!this._container) {
3038
return;

0 commit comments

Comments
 (0)