mirror of
https://github.com/Microsoft/vscode
synced 2024-08-28 05:19:39 +00:00
use disposableStore
This commit is contained in:
parent
ae2fe7d085
commit
7b2d02766c
|
@ -30,6 +30,7 @@ import { openContextMenu } from 'vs/workbench/contrib/terminal/browser/terminalC
|
|||
import { ACTIVE_GROUP } from 'vs/workbench/services/editor/common/editorService';
|
||||
import { IWorkbenchLayoutService, Parts } from 'vs/workbench/services/layout/browser/layoutService';
|
||||
import { IBaseActionViewItemOptions } from 'vs/base/browser/ui/actionbar/actionViewItems';
|
||||
import { DisposableStore } from 'vs/base/common/lifecycle';
|
||||
|
||||
export class TerminalEditor extends EditorPane {
|
||||
|
||||
|
@ -46,6 +47,8 @@ export class TerminalEditor extends EditorPane {
|
|||
|
||||
private _cancelContextMenu: boolean = false;
|
||||
|
||||
private _disposableStore = this._register(new DisposableStore());
|
||||
|
||||
constructor(
|
||||
group: IEditorGroup,
|
||||
@ITelemetryService telemetryService: ITelemetryService,
|
||||
|
@ -224,10 +227,11 @@ export class TerminalEditor extends EditorPane {
|
|||
* Actions might be of type Action (disposable) or Separator or SubmenuAction, which don't extend Disposable
|
||||
*/
|
||||
private _registerDisposableActions(dropdownAction: IAction, dropdownMenuActions: IAction[]): void {
|
||||
this._disposableStore.clear();
|
||||
if (dropdownAction instanceof Action) {
|
||||
this._register(dropdownAction);
|
||||
this._disposableStore.add(dropdownAction);
|
||||
}
|
||||
dropdownMenuActions.filter(a => a instanceof Action).forEach(a => this._register(a));
|
||||
dropdownMenuActions.filter(a => a instanceof Action).forEach(a => this._disposableStore.add(a));
|
||||
}
|
||||
|
||||
private _getDefaultProfileName(): string {
|
||||
|
|
|
@ -33,7 +33,7 @@ import { renderLabelWithIcons } from 'vs/base/browser/ui/iconLabel/iconLabels';
|
|||
import { getColorForSeverity } from 'vs/workbench/contrib/terminal/browser/terminalStatusList';
|
||||
import { createAndFillInContextMenuActions, MenuEntryActionViewItem } from 'vs/platform/actions/browser/menuEntryActionViewItem';
|
||||
import { DropdownWithPrimaryActionViewItem } from 'vs/platform/actions/browser/dropdownWithPrimaryActionViewItem';
|
||||
import { dispose, IDisposable, toDisposable } from 'vs/base/common/lifecycle';
|
||||
import { DisposableStore, dispose, IDisposable, toDisposable } from 'vs/base/common/lifecycle';
|
||||
import { URI } from 'vs/base/common/uri';
|
||||
import { ColorScheme } from 'vs/platform/theme/common/theme';
|
||||
import { getColorClass, getUriClasses } from 'vs/workbench/contrib/terminal/browser/terminalIcon';
|
||||
|
@ -58,6 +58,7 @@ export class TerminalViewPane extends ViewPane {
|
|||
private readonly _dropdownMenu: IMenu;
|
||||
private readonly _singleTabMenu: IMenu;
|
||||
private _viewShowing: IContextKey<boolean>;
|
||||
private _disposableStore = this._register(new DisposableStore());
|
||||
|
||||
constructor(
|
||||
options: IViewPaneOptions,
|
||||
|
@ -287,10 +288,11 @@ export class TerminalViewPane extends ViewPane {
|
|||
* Actions might be of type Action (disposable) or Separator or SubmenuAction, which don't extend Disposable
|
||||
*/
|
||||
private _registerDisposableActions(dropdownAction: IAction, dropdownMenuActions: IAction[]): void {
|
||||
this._disposableStore.clear();
|
||||
if (dropdownAction instanceof Action) {
|
||||
this._register(dropdownAction);
|
||||
this._disposableStore.add(dropdownAction);
|
||||
}
|
||||
dropdownMenuActions.filter(a => a instanceof Action).forEach(a => this._register(a));
|
||||
dropdownMenuActions.filter(a => a instanceof Action).forEach(a => this._disposableStore.add(a));
|
||||
}
|
||||
|
||||
private _getDefaultProfileName(): string {
|
||||
|
|
Loading…
Reference in a new issue