diff --git a/src/vs/base/browser/builder.ts b/src/vs/base/browser/builder.ts index 86c8fa616ad..537f1815dff 100644 --- a/src/vs/base/browser/builder.ts +++ b/src/vs/base/browser/builder.ts @@ -7,7 +7,7 @@ import 'vs/css!./builder'; import {TPromise} from 'vs/base/common/winjs.base'; import types = require('vs/base/common/types'); -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import strings = require('vs/base/common/strings'); import assert = require('vs/base/common/assert'); import DOM = require('vs/base/browser/dom'); @@ -627,11 +627,11 @@ export class Builder implements IDisposable { let type = arg1; if (useCapture) { if (this.captureToUnbind[type]) { - this.captureToUnbind[type] = disposeAll(this.captureToUnbind[type]); + this.captureToUnbind[type] = dispose(this.captureToUnbind[type]); } } else { if (this.toUnbind[type]) { - this.toUnbind[type] = disposeAll(this.toUnbind[type]); + this.toUnbind[type] = dispose(this.toUnbind[type]); } } } @@ -1769,13 +1769,13 @@ export class Builder implements IDisposable { for (type in this.toUnbind) { if (this.toUnbind.hasOwnProperty(type) && types.isArray(this.toUnbind[type])) { - this.toUnbind[type] = disposeAll(this.toUnbind[type]); + this.toUnbind[type] = dispose(this.toUnbind[type]); } } for (type in this.captureToUnbind) { if (this.captureToUnbind.hasOwnProperty(type) && types.isArray(this.captureToUnbind[type])) { - this.captureToUnbind[type] = disposeAll(this.captureToUnbind[type]); + this.captureToUnbind[type] = dispose(this.captureToUnbind[type]); } } diff --git a/src/vs/base/browser/globalMouseMoveMonitor.ts b/src/vs/base/browser/globalMouseMoveMonitor.ts index eda45caa678..7b14ee90183 100644 --- a/src/vs/base/browser/globalMouseMoveMonitor.ts +++ b/src/vs/base/browser/globalMouseMoveMonitor.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; -import {Disposable, IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {Disposable, IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as dom from 'vs/base/browser/dom'; import {IframeUtils} from 'vs/base/browser/iframe'; import {StandardMouseEvent} from 'vs/base/browser/mouseEvent'; @@ -64,7 +64,7 @@ export class GlobalMouseMoveMonitor extends Disposable { } // Unhook - this.hooks = disposeAll(this.hooks); + this.hooks = dispose(this.hooks); this.mouseMoveEventMerger = null; this.mouseMoveCallback = null; let onStopCallback = this.onStopCallback; diff --git a/src/vs/base/browser/touch.ts b/src/vs/base/browser/touch.ts index 2f3ae3153ba..a183cd6e37b 100644 --- a/src/vs/base/browser/touch.ts +++ b/src/vs/base/browser/touch.ts @@ -5,7 +5,7 @@ 'use strict'; import arrays = require('vs/base/common/arrays'); -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import DomUtils = require('vs/base/browser/dom'); export namespace EventType { @@ -90,7 +90,7 @@ export class Gesture implements IDisposable { } public set target(element: HTMLElement) { - this.callOnTarget = disposeAll(this.callOnTarget); + this.callOnTarget = dispose(this.callOnTarget); this.activeTouches = {}; diff --git a/src/vs/base/browser/ui/actionbar/actionbar.ts b/src/vs/base/browser/ui/actionbar/actionbar.ts index 79a7465a5a6..e15004d7830 100644 --- a/src/vs/base/browser/ui/actionbar/actionbar.ts +++ b/src/vs/base/browser/ui/actionbar/actionbar.ts @@ -712,7 +712,7 @@ export class ActionBar extends EventEmitter implements IActionRunner { this.focusTracker = null; } - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); this.getContainer().destroy(); @@ -792,7 +792,7 @@ export class SelectActionItem extends BaseActionItem { } public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); super.dispose(); } diff --git a/src/vs/base/browser/ui/contextview/contextview.ts b/src/vs/base/browser/ui/contextview/contextview.ts index 19d005aa692..99ab6846868 100644 --- a/src/vs/base/browser/ui/contextview/contextview.ts +++ b/src/vs/base/browser/ui/contextview/contextview.ts @@ -9,7 +9,7 @@ import 'vs/css!./contextview'; import {Builder, $} from 'vs/base/browser/builder'; import DOM = require('vs/base/browser/dom'); -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {EventEmitter} from 'vs/base/common/eventEmitter'; export interface IAnchor { @@ -251,6 +251,6 @@ export class ContextView extends EventEmitter { super.dispose(); this.hide(); - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); } } \ No newline at end of file diff --git a/src/vs/base/browser/ui/dropdown/dropdown.ts b/src/vs/base/browser/ui/dropdown/dropdown.ts index 6a81b17ed93..91ddf27eebc 100644 --- a/src/vs/base/browser/ui/dropdown/dropdown.ts +++ b/src/vs/base/browser/ui/dropdown/dropdown.ts @@ -12,7 +12,7 @@ import {Gesture, EventType} from 'vs/base/browser/touch'; import {ActionRunner, IAction} from 'vs/base/common/actions'; import {ActionItem, IActionItem} from 'vs/base/browser/ui/actionbar/actionbar'; import {EventEmitter} from 'vs/base/common/eventEmitter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {IContextViewProvider} from 'vs/base/browser/ui/contextview/contextview'; import {IMenuOptions} from 'vs/base/browser/ui/menu/menu'; @@ -120,7 +120,7 @@ export class BaseDropdown extends ActionRunner { super.dispose(); this.hide(); - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); if (this.$boxContainer) { this.$boxContainer.destroy(); diff --git a/src/vs/base/browser/ui/list/listView.ts b/src/vs/base/browser/ui/list/listView.ts index 956ab781061..4fa0d9d2edf 100644 --- a/src/vs/base/browser/ui/list/listView.ts +++ b/src/vs/base/browser/ui/list/listView.ts @@ -6,7 +6,7 @@ import { IScrollable } from 'vs/base/common/scrollable'; import { Emitter } from 'vs/base/common/event'; import { toObject, assign } from 'vs/base/common/objects'; -import { IDisposable, disposeAll } from 'vs/base/common/lifecycle'; +import { IDisposable, dispose } from 'vs/base/common/lifecycle'; import { Gesture } from 'vs/base/browser/touch'; import * as DOM from 'vs/base/browser/dom'; import { IScrollableElement } from 'vs/base/browser/ui/scrollbar/scrollableElement'; @@ -350,6 +350,6 @@ export class ListView implements IScrollable, IDisposable { this._domNode = null; } - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); } } diff --git a/src/vs/base/browser/ui/list/listWidget.ts b/src/vs/base/browser/ui/list/listWidget.ts index 994c3ec8609..d9555eec843 100644 --- a/src/vs/base/browser/ui/list/listWidget.ts +++ b/src/vs/base/browser/ui/list/listWidget.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import 'vs/css!./list'; -import { IDisposable, dispose, disposeAll } from 'vs/base/common/lifecycle'; +import { IDisposable, dispose } from 'vs/base/common/lifecycle'; import { isNumber } from 'vs/base/common/types'; import * as DOM from 'vs/base/browser/dom'; import Event, { Emitter, mapEvent, EventBufferer } from 'vs/base/common/event'; @@ -134,7 +134,7 @@ class Controller implements IDisposable { } dispose() { - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); } } diff --git a/src/vs/base/browser/ui/progressbar/progressbar.ts b/src/vs/base/browser/ui/progressbar/progressbar.ts index 5e7d29e9f52..ca4a2e08c46 100644 --- a/src/vs/base/browser/ui/progressbar/progressbar.ts +++ b/src/vs/base/browser/ui/progressbar/progressbar.ts @@ -12,7 +12,7 @@ import browser = require('vs/base/browser/browser'); import {Builder, $} from 'vs/base/browser/builder'; import DOM = require('vs/base/browser/dom'); import uuid = require('vs/base/common/uuid'); -import {IDisposable,disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable,dispose} from 'vs/base/common/lifecycle'; const css_done = 'done'; const css_active = 'active'; @@ -239,6 +239,6 @@ export class ProgressBar { } public dispose(): void { - this.toUnbind = disposeAll(this.toUnbind); + this.toUnbind = dispose(this.toUnbind); } } \ No newline at end of file diff --git a/src/vs/base/browser/ui/sash/sash.ts b/src/vs/base/browser/ui/sash/sash.ts index a37ac4f5102..8f6bdfaa576 100644 --- a/src/vs/base/browser/ui/sash/sash.ts +++ b/src/vs/base/browser/ui/sash/sash.ts @@ -6,7 +6,7 @@ 'use strict'; import 'vs/css!./sash'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {Builder, $} from 'vs/base/browser/builder'; import {isIPad} from 'vs/base/browser/browser'; import types = require('vs/base/common/types'); @@ -188,7 +188,7 @@ export class Sash extends EventEmitter { listeners.push(DOM.addDisposableListener(this.$e.getHTMLElement(), EventType.End, (event: GestureEvent) => { this.emit('end'); - disposeAll(listeners); + dispose(listeners); })); } diff --git a/src/vs/base/browser/ui/scrollbar/scrollableElementImpl.ts b/src/vs/base/browser/ui/scrollbar/scrollableElementImpl.ts index ddf44cc7c7c..b823564940f 100644 --- a/src/vs/base/browser/ui/scrollbar/scrollableElementImpl.ts +++ b/src/vs/base/browser/ui/scrollbar/scrollableElementImpl.ts @@ -16,7 +16,7 @@ import { IScrollableElementOptions, IScrollbar, IDimensions, IMouseWheelEvent, visibilityFromString, IScrollableElement, IScrollableElementCreationOptions, IOverviewRulerLayoutInfo } from 'vs/base/browser/ui/scrollbar/scrollableElement'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {IScrollable} from 'vs/base/common/scrollable'; import {Widget} from 'vs/base/browser/ui/widget'; import {TimeoutTimer} from 'vs/base/common/async'; @@ -115,7 +115,7 @@ export class ScrollableElement extends Widget implements IScrollableElement { } public dispose(): void { - this._mouseWheelToDispose = disposeAll(this._mouseWheelToDispose); + this._mouseWheelToDispose = dispose(this._mouseWheelToDispose); super.dispose(); } @@ -197,7 +197,7 @@ export class ScrollableElement extends Widget implements IScrollableElement { } // Stop listening (if necessary) - this._mouseWheelToDispose = disposeAll(this._mouseWheelToDispose); + this._mouseWheelToDispose = dispose(this._mouseWheelToDispose); // Start listening (if necessary) if (shouldListen) { diff --git a/src/vs/base/browser/ui/splitview/splitview.ts b/src/vs/base/browser/ui/splitview/splitview.ts index dd6e29e80ad..5c686964207 100644 --- a/src/vs/base/browser/ui/splitview/splitview.ts +++ b/src/vs/base/browser/ui/splitview/splitview.ts @@ -807,9 +807,9 @@ export class SplitView implements this.viewElements.forEach(e => this.el.removeChild(e)); this.el = null; this.viewElements = []; - this.views = lifecycle.disposeAll(this.views); - this.sashes = lifecycle.disposeAll(this.sashes); - this.sashesListeners = lifecycle.disposeAll(this.sashesListeners); + this.views = lifecycle.dispose(this.views); + this.sashes = lifecycle.dispose(this.sashes); + this.sashesListeners = lifecycle.dispose(this.sashesListeners); this.measureContainerSize = null; this.layoutViewElement = null; this.eventWrapper = null; diff --git a/src/vs/base/browser/ui/timer/timer.ts b/src/vs/base/browser/ui/timer/timer.ts index 5232d2e9edd..ca7a8dad6e6 100644 --- a/src/vs/base/browser/ui/timer/timer.ts +++ b/src/vs/base/browser/ui/timer/timer.ts @@ -7,7 +7,7 @@ import 'vs/css!./timer'; import {TimeKeeper, ITimerEvent, getTimeKeeper} from 'vs/base/common/timer'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import DomUtils = require('vs/base/browser/dom'); interface IUnmatchedStartTimerEvent { @@ -50,7 +50,7 @@ export class TimeKeeperRenderer { public destroy(): void { document.body.removeChild(this.outerDomNode); window.clearInterval(this.intervalTokenId); - this.listenersToRemove = disposeAll(this.listenersToRemove); + this.listenersToRemove = dispose(this.listenersToRemove); } private _createDomNode(): HTMLElement { diff --git a/src/vs/base/common/lifecycle.ts b/src/vs/base/common/lifecycle.ts index d38d794cbca..9c374cc623c 100644 --- a/src/vs/base/common/lifecycle.ts +++ b/src/vs/base/common/lifecycle.ts @@ -4,6 +4,8 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; +import { isArray } from './types'; + export const empty: IDisposable = Object.freeze({ dispose() { } }); @@ -12,44 +14,29 @@ export interface IDisposable { dispose(): void; } -export function dispose(disposable: T): T { - if (disposable) { - disposable.dispose(); +export function dispose(disposable: T): T; +export function dispose(disposables: T[]): T[]; +export function dispose(...disposables: T[]): T[]; +export function dispose(arg: any): T[] { + if (isArray(arg)) { + const disposables: T[] = arg; + disposables.forEach(d => d && d.dispose()); + return []; } + + const disposable: T = arg; + disposable.dispose(); return null; } -export function disposeAll(arr: T[]): T[] { - if (arr) { - for (let i = 0, len = arr.length; i < len; i++) { - if (arr[i]) { - arr[i].dispose(); - } - } - } - return []; -} - -export function combinedDispose(...disposables: IDisposable[]): IDisposable { - return { - dispose: () => disposeAll(disposables) - }; -} - -export function combinedDispose2(disposables: IDisposable[]): IDisposable { - return { - dispose: () => disposeAll(disposables) - }; -} - -export function fnToDisposable(fn: () => void): IDisposable { - return { - dispose: () => fn() - }; +export function combinedDisposable(disposables: IDisposable[]): IDisposable; +export function combinedDisposable(...disposables: IDisposable[]): IDisposable; +export function combinedDisposable(disposables: any): IDisposable { + return { dispose: () => dispose(disposables) }; } export function toDisposable(...fns: (() => void)[]): IDisposable { - return combinedDispose2(fns.map(fnToDisposable)); + return combinedDisposable(fns.map(fn => ({ dispose: fn }))); } function callAll(arg: any): any { @@ -87,7 +74,7 @@ export abstract class Disposable implements IDisposable { } public dispose(): void { - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } protected _register(t:T): T { diff --git a/src/vs/base/common/service.ts b/src/vs/base/common/service.ts index 5c4d72a0531..25a8dd109f7 100644 --- a/src/vs/base/common/service.ts +++ b/src/vs/base/common/service.ts @@ -7,7 +7,7 @@ import { Promise, TPromise } from 'vs/base/common/winjs.base'; import { assign } from 'vs/base/common/objects'; -import { IDisposable, fnToDisposable } from 'vs/base/common/lifecycle'; +import { IDisposable, toDisposable } from 'vs/base/common/lifecycle'; import { Emitter } from 'vs/base/common/event'; enum RequestType { @@ -174,7 +174,7 @@ export class Server { this.protocol.send( { id, data, type: ResponseType.Progress }); }); - this.activeRequests[request.id] = fnToDisposable(() => requestPromise.cancel()); + this.activeRequests[request.id] = toDisposable(() => requestPromise.cancel()); } private onCancelRequest(request: IRawRequest): void { diff --git a/src/vs/base/parts/quickopen/browser/quickOpenWidget.ts b/src/vs/base/parts/quickopen/browser/quickOpenWidget.ts index a6e92d2b468..92f4304b920 100644 --- a/src/vs/base/parts/quickopen/browser/quickOpenWidget.ts +++ b/src/vs/base/parts/quickopen/browser/quickOpenWidget.ts @@ -26,7 +26,7 @@ import {DefaultController, ClickBehavior} from 'vs/base/parts/tree/browser/treeD import DOM = require('vs/base/browser/dom'); import {IActionProvider} from 'vs/base/parts/tree/browser/actionsRenderer'; import {KeyCode} from 'vs/base/common/keyCodes'; -import {IDisposable,disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable,dispose} from 'vs/base/common/lifecycle'; export interface IQuickOpenCallbacks { onOk: () => void; @@ -609,7 +609,7 @@ export class QuickOpenWidget implements IModelProvider { if (!complete) { complete = true; - unbind = disposeAll(unbind); + unbind = dispose(unbind); c(null); } diff --git a/src/vs/base/parts/tree/browser/treeModel.ts b/src/vs/base/parts/tree/browser/treeModel.ts index 189425d5e43..5dbb33dc5a7 100644 --- a/src/vs/base/parts/tree/browser/treeModel.ts +++ b/src/vs/base/parts/tree/browser/treeModel.ts @@ -6,7 +6,7 @@ import Assert = require('vs/base/common/assert'); import { onUnexpectedError } from 'vs/base/common/errors'; -import { IDisposable, combinedDispose } from 'vs/base/common/lifecycle'; +import { IDisposable, combinedDisposable } from 'vs/base/common/lifecycle'; import arrays = require('vs/base/common/arrays'); import { INavigator } from 'vs/base/common/iterator'; import Events = require('vs/base/common/eventEmitter'); @@ -804,13 +804,13 @@ export class TreeModel extends Events.EventEmitter { this.registry = new ItemRegistry(); - this.registryDisposable = combinedDispose( + this.registryDisposable = combinedDisposable([ this.addEmitter2(this.registry), this.registry.addListener2('item:dispose', (event: IItemDisposeEvent) => { event.item.getAllTraits() .forEach(trait => delete this.traitsToItems[trait][event.item.id]); }) - ); + ]); var id = this.context.dataSource.getId(this.context.tree, element); this.input = new RootItem(id, this.registry, this.context, this.lock, element); diff --git a/src/vs/base/parts/tree/browser/treeView.ts b/src/vs/base/parts/tree/browser/treeView.ts index 96b162af22a..fbb111d447a 100644 --- a/src/vs/base/parts/tree/browser/treeView.ts +++ b/src/vs/base/parts/tree/browser/treeView.ts @@ -1645,7 +1645,7 @@ export class TreeView extends HeightMap implements IScrollable { this.releaseModel(); this.modelListeners = null; - this.viewListeners = Lifecycle.disposeAll(this.viewListeners); + this.viewListeners = Lifecycle.dispose(this.viewListeners); if (this.domNode.parentNode) { this.domNode.parentNode.removeChild(this.domNode); diff --git a/src/vs/base/parts/tree/test/browser/treeModel.test.ts b/src/vs/base/parts/tree/test/browser/treeModel.test.ts index 0b78c67387e..8a797e1bab8 100644 --- a/src/vs/base/parts/tree/test/browser/treeModel.test.ts +++ b/src/vs/base/parts/tree/test/browser/treeModel.test.ts @@ -101,7 +101,7 @@ class EventCounter { } public dispose(): void { - this.listeners = lifecycle.disposeAll(this.listeners); + this.listeners = lifecycle.dispose(this.listeners); this._count = -1; } } diff --git a/src/vs/base/worker/defaultWorkerFactory.ts b/src/vs/base/worker/defaultWorkerFactory.ts index e8ab9ca5312..7633ddc4454 100644 --- a/src/vs/base/worker/defaultWorkerFactory.ts +++ b/src/vs/base/worker/defaultWorkerFactory.ts @@ -5,7 +5,7 @@ 'use strict'; import * as flags from 'vs/base/common/flags'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {IWorker, IWorkerCallback, IWorkerFactory} from 'vs/base/common/worker/workerClient'; import * as dom from 'vs/base/browser/dom'; @@ -87,7 +87,7 @@ class FrameWorker implements IWorker { } public dispose(): void { - this._listeners = disposeAll(this._listeners); + this._listeners = dispose(this._listeners); window.removeEventListener('message', this.onMessage); window.frames[this.iframeId()].close(); } diff --git a/src/vs/editor/browser/controller/keyboardHandler.ts b/src/vs/editor/browser/controller/keyboardHandler.ts index 1800ffcad01..d2e59d05a2f 100644 --- a/src/vs/editor/browser/controller/keyboardHandler.ts +++ b/src/vs/editor/browser/controller/keyboardHandler.ts @@ -5,7 +5,7 @@ 'use strict'; import Event, {Emitter} from 'vs/base/common/event'; -import {Disposable, IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {Disposable, IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as browser from 'vs/base/browser/browser'; import * as dom from 'vs/base/browser/dom'; import {IKeyboardEvent} from 'vs/base/browser/keyboardEvent'; @@ -267,7 +267,7 @@ export class KeyboardHandler extends ViewEventHandler implements IDisposable { this.context.removeEventHandler(this); this.textAreaHandler.dispose(); this.textArea.dispose(); - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } private _getStrategy(): TextAreaStrategy { diff --git a/src/vs/editor/browser/controller/mouseHandler.ts b/src/vs/editor/browser/controller/mouseHandler.ts index 68ae99ff15a..2ff656af19c 100644 --- a/src/vs/editor/browser/controller/mouseHandler.ts +++ b/src/vs/editor/browser/controller/mouseHandler.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; -import {IDisposable, disposeAll, Disposable} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose, Disposable} from 'vs/base/common/lifecycle'; import * as platform from 'vs/base/common/platform'; import * as browser from 'vs/base/browser/browser'; import * as dom from 'vs/base/browser/dom'; @@ -144,8 +144,8 @@ export class MouseHandler extends ViewEventHandler implements IDisposable { public dispose(): void { this.context.removeEventHandler(this); - this.listenersToRemove = disposeAll(this.listenersToRemove); - this.toDispose = disposeAll(this.toDispose); + this.listenersToRemove = dispose(this.listenersToRemove); + this.toDispose = dispose(this.toDispose); this._mouseDownOperation.dispose(); } diff --git a/src/vs/editor/browser/standalone/standaloneCodeEditor.ts b/src/vs/editor/browser/standalone/standaloneCodeEditor.ts index d3397d0627d..92ab802440b 100644 --- a/src/vs/editor/browser/standalone/standaloneCodeEditor.ts +++ b/src/vs/editor/browser/standalone/standaloneCodeEditor.ts @@ -6,7 +6,7 @@ 'use strict'; import {IJSONSchema} from 'vs/base/common/jsonSchema'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import URI from 'vs/base/common/uri'; import {TPromise} from 'vs/base/common/winjs.base'; import {IContextViewService} from 'vs/platform/contextview/browser/contextView'; @@ -101,7 +101,7 @@ class StandaloneEditor extends CodeEditorWidget { public dispose(): void { super.dispose(); - this._toDispose2 = disposeAll(this._toDispose2); + this._toDispose2 = dispose(this._toDispose2); } public destroy(): void { @@ -210,7 +210,7 @@ class StandaloneDiffEditor extends DiffEditorWidget { public dispose(): void { super.dispose(); - this._toDispose2 = disposeAll(this._toDispose2); + this._toDispose2 = dispose(this._toDispose2); } public destroy(): void { diff --git a/src/vs/editor/browser/view/viewImpl.ts b/src/vs/editor/browser/view/viewImpl.ts index 7b665b251ea..c502244ca11 100644 --- a/src/vs/editor/browser/view/viewImpl.ts +++ b/src/vs/editor/browser/view/viewImpl.ts @@ -6,7 +6,7 @@ import {onUnexpectedError} from 'vs/base/common/errors'; import {EventEmitter, IEmitterEvent, IEventEmitter, ListenerUnbind} from 'vs/base/common/eventEmitter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as timer from 'vs/base/common/timer'; import * as browser from 'vs/base/browser/browser'; import * as dom from 'vs/base/browser/dom'; @@ -501,7 +501,7 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp }); this.listenersToRemove = []; - this.listenersToDispose = disposeAll(this.listenersToDispose); + this.listenersToDispose = dispose(this.listenersToDispose); this.keyboardHandler.dispose(); this.pointerHandler.dispose(); diff --git a/src/vs/editor/browser/viewLayout/scrollManager.ts b/src/vs/editor/browser/viewLayout/scrollManager.ts index 829462394ac..30c150f0eab 100644 --- a/src/vs/editor/browser/viewLayout/scrollManager.ts +++ b/src/vs/editor/browser/viewLayout/scrollManager.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as dom from 'vs/base/browser/dom'; import {IOverviewRulerLayoutInfo, IScrollableElement, IScrollableElementCreationOptions} from 'vs/base/browser/ui/scrollbar/scrollableElement'; import {ScrollableElement} from 'vs/base/browser/ui/scrollbar/scrollableElementImpl'; @@ -106,7 +106,7 @@ export class ScrollManager implements IDisposable { } public dispose(): void { - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); } public onSizeProviderLayoutChanged(): void { diff --git a/src/vs/editor/browser/widget/diffEditorWidget.ts b/src/vs/editor/browser/widget/diffEditorWidget.ts index a53dd6e41e6..50be6c974d5 100644 --- a/src/vs/editor/browser/widget/diffEditorWidget.ts +++ b/src/vs/editor/browser/widget/diffEditorWidget.ts @@ -9,7 +9,7 @@ import 'vs/css!./media/diffEditor'; import {IAction} from 'vs/base/common/actions'; import {RunOnceScheduler} from 'vs/base/common/async'; import {EventEmitter, IEmitterEvent} from 'vs/base/common/eventEmitter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as objects from 'vs/base/common/objects'; import * as dom from 'vs/base/browser/dom'; import {StyleMutator} from 'vs/base/browser/styleMutator'; @@ -339,7 +339,7 @@ export class DiffEditorWidget extends EventEmitter implements editorBrowser.IDif } public dispose(): void { - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); window.clearInterval(this._measureDomElementToken); @@ -1592,7 +1592,7 @@ class DiffEdtorWidgetInline extends DiffEditorWidgetStyle implements IDiffEditor } public dispose(): void { - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); } public setEnableSplitViewResizing(enableSplitViewResizing:boolean): void { diff --git a/src/vs/editor/common/commonCodeEditor.ts b/src/vs/editor/common/commonCodeEditor.ts index d7e5dfec3fb..a6400a22d3e 100644 --- a/src/vs/editor/common/commonCodeEditor.ts +++ b/src/vs/editor/common/commonCodeEditor.ts @@ -8,7 +8,7 @@ import * as nls from 'vs/nls'; import {IAction, IActionProvider, isAction} from 'vs/base/common/actions'; import {onUnexpectedError} from 'vs/base/common/errors'; import {EventEmitter, IEventEmitter, ListenerUnbind} from 'vs/base/common/eventEmitter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as objects from 'vs/base/common/objects'; import * as timer from 'vs/base/common/timer'; import {TPromise} from 'vs/base/common/winjs.base'; @@ -145,7 +145,7 @@ export abstract class CommonCodeEditor extends EventEmitter implements IActionPr public dispose(): void { this._codeEditorService.removeCodeEditor(this); - this._lifetimeDispose = disposeAll(this._lifetimeDispose); + this._lifetimeDispose = dispose(this._lifetimeDispose); var contributionId:string; for (contributionId in this.contributions) { diff --git a/src/vs/editor/common/controller/cursor.ts b/src/vs/editor/common/controller/cursor.ts index a1cbac7a8a8..90e255aa12b 100644 --- a/src/vs/editor/common/controller/cursor.ts +++ b/src/vs/editor/common/controller/cursor.ts @@ -7,7 +7,7 @@ import * as nls from 'vs/nls'; import {onUnexpectedError} from 'vs/base/common/errors'; import {EventEmitter} from 'vs/base/common/eventEmitter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {ReplaceCommand} from 'vs/editor/common/commands/replaceCommand'; import {CursorCollection, ICursorCollectionState} from 'vs/editor/common/controller/cursorCollection'; import {DispatcherEvent} from 'vs/editor/common/controller/handlerDispatcher'; @@ -145,7 +145,7 @@ export class Cursor extends EventEmitter { } public dispose(): void { - this.modelUnbinds = disposeAll(this.modelUnbinds); + this.modelUnbinds = dispose(this.modelUnbinds); this.model = null; this.cursors.dispose(); this.cursors = null; diff --git a/src/vs/editor/common/editorActionEnablement.ts b/src/vs/editor/common/editorActionEnablement.ts index 040f4435acd..934b4214fcf 100644 --- a/src/vs/editor/common/editorActionEnablement.ts +++ b/src/vs/editor/common/editorActionEnablement.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {EventType, ICommonCodeEditor} from 'vs/editor/common/editorCommon'; export enum Behaviour { @@ -144,7 +144,7 @@ class InternalEnablementState extends CachingEnablementState { public dispose():void { super.dispose(); - disposeAll(this._callOnDispose); + dispose(this._callOnDispose); } public _computeValue():boolean { diff --git a/src/vs/editor/common/model/mirrorModel.ts b/src/vs/editor/common/model/mirrorModel.ts index fc6a1c322b1..760f5f0f4a7 100644 --- a/src/vs/editor/common/model/mirrorModel.ts +++ b/src/vs/editor/common/model/mirrorModel.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; -import {disposeAll} from 'vs/base/common/lifecycle'; +import {dispose} from 'vs/base/common/lifecycle'; import URI from 'vs/base/common/uri'; import {TPromise} from 'vs/base/common/winjs.base'; import * as editorCommon from 'vs/editor/common/editorCommon'; @@ -334,7 +334,7 @@ export class MirrorModel extends AbstractMirrorModel implements editorCommon.IMi super.dispose(); var embeddedModels = Object.keys(this._embeddedModels).map((modeId) => this._embeddedModels[modeId]); embeddedModels.forEach((embeddedModel) => this._resourceService.remove(embeddedModel.getAssociatedResource())); - disposeAll(embeddedModels); + dispose(embeddedModels); this._embeddedModels = {}; } diff --git a/src/vs/editor/common/model/textModelWithTokens.ts b/src/vs/editor/common/model/textModelWithTokens.ts index dd0c4472f04..30c58765479 100644 --- a/src/vs/editor/common/model/textModelWithTokens.ts +++ b/src/vs/editor/common/model/textModelWithTokens.ts @@ -7,7 +7,7 @@ import * as nls from 'vs/nls'; import {RunOnceScheduler} from 'vs/base/common/async'; import {onUnexpectedError} from 'vs/base/common/errors'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {StopWatch} from 'vs/base/common/stopwatch'; import * as timer from 'vs/base/common/timer'; import {TPromise} from 'vs/base/common/winjs.base'; @@ -254,7 +254,7 @@ export class TextModelWithTokens extends TextModel implements editorCommon.IToke this._mode = null; this._lastState = null; this._tokensInflatorMap = null; - this._retokenizers = disposeAll(this._retokenizers); + this._retokenizers = dispose(this._retokenizers); this._scheduleRetokenizeNow.dispose(); super.dispose(); @@ -369,7 +369,7 @@ export class TextModelWithTokens extends TextModel implements editorCommon.IToke } _resetTokenizationState(): void { - this._retokenizers = disposeAll(this._retokenizers); + this._retokenizers = dispose(this._retokenizers); this._scheduleRetokenizeNow.cancel(); this._clearTimers(); for (var i = 0; i < this._lines.length; i++) { diff --git a/src/vs/editor/common/services/editorWorkerServiceImpl.ts b/src/vs/editor/common/services/editorWorkerServiceImpl.ts index 79bdd250deb..ab664e95738 100644 --- a/src/vs/editor/common/services/editorWorkerServiceImpl.ts +++ b/src/vs/editor/common/services/editorWorkerServiceImpl.ts @@ -5,7 +5,7 @@ 'use strict'; import {IntervalTimer} from 'vs/base/common/async'; -import {Disposable, IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {Disposable, IDisposable, dispose} from 'vs/base/common/lifecycle'; import URI from 'vs/base/common/uri'; import {TPromise} from 'vs/base/common/winjs.base'; import {SimpleWorkerClient} from 'vs/base/common/worker/simpleWorker'; @@ -128,7 +128,7 @@ class EditorWorkerClient extends Disposable { public dispose(): void { for (let modelUrl in this._syncedModels) { - disposeAll(this._syncedModels[modelUrl]); + dispose(this._syncedModels[modelUrl]); } this._syncedModels = Object.create(null); this._syncedModelsLastUsedTime = Object.create(null); @@ -259,6 +259,6 @@ class EditorWorkerClient extends Disposable { let toDispose = this._syncedModels[modelUrl]; delete this._syncedModels[modelUrl]; delete this._syncedModelsLastUsedTime[modelUrl]; - disposeAll(toDispose); + dispose(toDispose); } } diff --git a/src/vs/editor/common/services/modeServiceImpl.ts b/src/vs/editor/common/services/modeServiceImpl.ts index d7b507ab549..152d5ad4336 100644 --- a/src/vs/editor/common/services/modeServiceImpl.ts +++ b/src/vs/editor/common/services/modeServiceImpl.ts @@ -7,7 +7,7 @@ import * as nls from 'vs/nls'; import {onUnexpectedError} from 'vs/base/common/errors'; import Event, {Emitter} from 'vs/base/common/event'; -import {IDisposable, combinedDispose, empty as EmptyDisposable} from 'vs/base/common/lifecycle'; // TODO@Alex +import {IDisposable, combinedDisposable, empty as EmptyDisposable} from 'vs/base/common/lifecycle'; // TODO@Alex import * as objects from 'vs/base/common/objects'; import * as paths from 'vs/base/common/paths'; import {TPromise} from 'vs/base/common/winjs.base'; @@ -433,7 +433,7 @@ export class ModeServiceImpl implements IModeService { } protected doRegisterMonarchDefinition(modeId:string, lexer: ILexer): IDisposable { - return combinedDispose( + return combinedDisposable( this.registerTokenizationSupport(modeId, (mode: modes.IMode) => { return createTokenizationSupport(this, mode, lexer); }), @@ -614,7 +614,7 @@ export class MainThreadModeServiceImpl extends ModeServiceImpl { public registerMonarchDefinition(modelService: IModelService, editorWorkerService:IEditorWorkerService, modeId:string, language:ILanguage): IDisposable { this._getModeServiceWorkerHelper().registerMonarchDefinition(modeId, language); var lexer = compile(objects.clone(language)); - return combinedDispose( + return combinedDisposable( super.doRegisterMonarchDefinition(modeId, lexer), this.registerModeSupport(modeId, 'suggestSupport', (mode) => { diff --git a/src/vs/editor/common/viewModel/viewModel.ts b/src/vs/editor/common/viewModel/viewModel.ts index 15660e473e8..ff3cbff70a7 100644 --- a/src/vs/editor/common/viewModel/viewModel.ts +++ b/src/vs/editor/common/viewModel/viewModel.ts @@ -5,7 +5,7 @@ 'use strict'; import {EmitterEvent, EventEmitter, IEmitterEvent, IEventEmitter, ListenerUnbind} from 'vs/base/common/eventEmitter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as strings from 'vs/base/common/strings'; import {Position} from 'vs/editor/common/core/position'; import {Range} from 'vs/editor/common/core/range'; @@ -101,7 +101,7 @@ export class ViewModel extends EventEmitter implements editorCommon.IViewModel { this.listenersToRemove.forEach((element) => { element(); }); - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); this.listenersToRemove = []; this.decorations.dispose(); this.decorations = null; diff --git a/src/vs/editor/common/worker/validationHelper.ts b/src/vs/editor/common/worker/validationHelper.ts index 121ab93d23f..0d1b2b6a276 100644 --- a/src/vs/editor/common/worker/validationHelper.ts +++ b/src/vs/editor/common/worker/validationHelper.ts @@ -6,7 +6,7 @@ import {RunOnceScheduler} from 'vs/base/common/async'; import {IEmitterEvent} from 'vs/base/common/eventEmitter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import URI from 'vs/base/common/uri'; import {IMirrorModel} from 'vs/editor/common/editorCommon'; import {IResourceAddedEvent, IResourceRemovedEvent, IResourceService, ResourceEvents} from 'vs/editor/common/services/resourceService'; @@ -37,7 +37,7 @@ class ValidationModel implements IDisposable { } public dispose(): void { - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); this._changeCallback = null; } @@ -107,9 +107,9 @@ export class ValidationHelper implements IDisposable { } public dispose(): void { - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); - disposeAll(Object.keys(this._models).map((modelUrl) => this._models[modelUrl])); + dispose(Object.keys(this._models).map((modelUrl) => this._models[modelUrl])); this._models = null; } diff --git a/src/vs/editor/contrib/codelens/browser/codelens.ts b/src/vs/editor/contrib/codelens/browser/codelens.ts index 22f6afa56d9..9cca70acb26 100644 --- a/src/vs/editor/contrib/codelens/browser/codelens.ts +++ b/src/vs/editor/contrib/codelens/browser/codelens.ts @@ -8,7 +8,7 @@ import 'vs/css!./codelens'; import {RunOnceScheduler} from 'vs/base/common/async'; import {onUnexpectedError} from 'vs/base/common/errors'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import Severity from 'vs/base/common/severity'; import {format} from 'vs/base/common/strings'; import {TPromise} from 'vs/base/common/winjs.base'; @@ -386,7 +386,7 @@ export class CodeLensContribution implements editorCommon.IEditorContribution { public dispose(): void { this.localDispose(); - this._globalToDispose = disposeAll(this._globalToDispose); + this._globalToDispose = dispose(this._globalToDispose); } private localDispose(): void { @@ -399,7 +399,7 @@ export class CodeLensContribution implements editorCommon.IEditorContribution { this._currentFindOccPromise.cancel(); this._currentFindOccPromise = null; } - this._localToDispose = disposeAll(this._localToDispose); + this._localToDispose = dispose(this._localToDispose); } public getId(): string { diff --git a/src/vs/editor/contrib/color/browser/color.ts b/src/vs/editor/contrib/color/browser/color.ts index 11684f4932d..13f10e27ecd 100644 --- a/src/vs/editor/contrib/color/browser/color.ts +++ b/src/vs/editor/contrib/color/browser/color.ts @@ -8,7 +8,7 @@ import 'vs/css!./color'; import {RunOnceScheduler} from 'vs/base/common/async'; import {onUnexpectedError} from 'vs/base/common/errors'; -import {IDisposable, cAll, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, cAll, dispose} from 'vs/base/common/lifecycle'; import * as strings from 'vs/base/common/strings'; import {TPromise} from 'vs/base/common/winjs.base'; import * as dom from 'vs/base/browser/dom'; @@ -118,7 +118,7 @@ export class ColorContribution implements editorCommon.IEditorContribution { } this._style.parentNode.removeChild(this._style); this._style = null; - this._callOnDispose = disposeAll(this._callOnDispose); + this._callOnDispose = dispose(this._callOnDispose); } public getId():string { diff --git a/src/vs/editor/contrib/contextmenu/browser/contextmenu.ts b/src/vs/editor/contrib/contextmenu/browser/contextmenu.ts index d4ff4b37b4c..2feecb63ecb 100644 --- a/src/vs/editor/contrib/contextmenu/browser/contextmenu.ts +++ b/src/vs/editor/contrib/contextmenu/browser/contextmenu.ts @@ -7,7 +7,7 @@ import * as nls from 'vs/nls'; import {IAction} from 'vs/base/common/actions'; import {KeyCode, KeyMod, Keybinding} from 'vs/base/common/keyCodes'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {SortedList} from 'vs/base/common/sortedList'; import {TPromise} from 'vs/base/common/winjs.base'; import * as dom from 'vs/base/browser/dom'; @@ -248,7 +248,7 @@ class ContextMenuController implements IEditorContribution { this.contextViewService.hideContextView(); } - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } } diff --git a/src/vs/editor/contrib/defineKeybinding/browser/defineKeybinding.ts b/src/vs/editor/contrib/defineKeybinding/browser/defineKeybinding.ts index 37012842399..93b2259054f 100644 --- a/src/vs/editor/contrib/defineKeybinding/browser/defineKeybinding.ts +++ b/src/vs/editor/contrib/defineKeybinding/browser/defineKeybinding.ts @@ -10,7 +10,7 @@ import * as nls from 'vs/nls'; import {RunOnceScheduler} from 'vs/base/common/async'; import {IHTMLContentElement} from 'vs/base/common/htmlContent'; import {CommonKeybindings, KeyCode, KeyMod, Keybinding} from 'vs/base/common/keyCodes'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {TPromise} from 'vs/base/common/winjs.base'; import * as dom from 'vs/base/browser/dom'; import {renderHtml} from 'vs/base/browser/htmlContentRenderer'; @@ -89,8 +89,8 @@ export class DefineKeybindingController implements editorCommon.IEditorContribut } public dispose(): void { - this._modelToDispose = disposeAll(this._modelToDispose); - this._toDispose = disposeAll(this._toDispose); + this._modelToDispose = dispose(this._modelToDispose); + this._toDispose = dispose(this._toDispose); this._launchWidget.dispose(); this._launchWidget = null; this._defineWidget.dispose(); @@ -116,7 +116,7 @@ export class DefineKeybindingController implements editorCommon.IEditorContribut } private _onModel(): void { - this._modelToDispose = disposeAll(this._modelToDispose); + this._modelToDispose = dispose(this._modelToDispose); let model = this._editor.getModel(); if (!model) { @@ -258,7 +258,7 @@ class DefineKeybindingLauncherWidget implements IOverlayWidget { public dispose(): void { this._editor.removeOverlayWidget(this); - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } public show(): void { @@ -387,7 +387,7 @@ class DefineKeybindingWidget implements IOverlayWidget { public dispose(): void { this._editor.removeOverlayWidget(this); - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } public getId(): string { diff --git a/src/vs/editor/contrib/find/common/findModel.ts b/src/vs/editor/contrib/find/common/findModel.ts index afcecd24f54..9b236576ef0 100644 --- a/src/vs/editor/contrib/find/common/findModel.ts +++ b/src/vs/editor/contrib/find/common/findModel.ts @@ -5,7 +5,7 @@ 'use strict'; import {RunOnceScheduler} from 'vs/base/common/async'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as strings from 'vs/base/common/strings'; import {ReplaceCommand} from 'vs/editor/common/commands/replaceCommand'; import {Position} from 'vs/editor/common/core/position'; @@ -80,7 +80,7 @@ export class FindModelBoundToEditorModel { } public dispose(): void { - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } private _onStateChanged(e:FindReplaceStateChangedEvent): void { diff --git a/src/vs/editor/contrib/folding/browser/folding.ts b/src/vs/editor/contrib/folding/browser/folding.ts index 2d712f21aaf..59bb5367286 100644 --- a/src/vs/editor/contrib/folding/browser/folding.ts +++ b/src/vs/editor/contrib/folding/browser/folding.ts @@ -9,7 +9,7 @@ import * as nls from 'vs/nls'; import {RunOnceScheduler} from 'vs/base/common/async'; import {KeyCode, KeyMod} from 'vs/base/common/keyCodes'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {TPromise} from 'vs/base/common/winjs.base'; import {EditorAction} from 'vs/editor/common/editorAction'; import {Behaviour} from 'vs/editor/common/editorActionEnablement'; @@ -173,7 +173,7 @@ export class FoldingController implements editorCommon.IEditorContribution { public dispose(): void { this.cleanState(); - this.globalToDispose = disposeAll(this.globalToDispose); + this.globalToDispose = dispose(this.globalToDispose); } /** @@ -214,7 +214,7 @@ export class FoldingController implements editorCommon.IEditorContribution { } private cleanState(): void { - this.localToDispose = disposeAll(this.localToDispose); + this.localToDispose = dispose(this.localToDispose); } private applyRegions(regions: IFoldingRange[]) { diff --git a/src/vs/editor/contrib/format/common/formatActions.ts b/src/vs/editor/contrib/format/common/formatActions.ts index 5f043322bd0..c30475f1e01 100644 --- a/src/vs/editor/contrib/format/common/formatActions.ts +++ b/src/vs/editor/contrib/format/common/formatActions.ts @@ -7,7 +7,7 @@ import * as nls from 'vs/nls'; import * as arrays from 'vs/base/common/arrays'; import {KeyCode, KeyMod} from 'vs/base/common/keyCodes'; -import {IDisposable, cAll, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, cAll, dispose} from 'vs/base/common/lifecycle'; import {TPromise} from 'vs/base/common/winjs.base'; import {EditorAction} from 'vs/editor/common/editorAction'; import {Behaviour} from 'vs/editor/common/editorActionEnablement'; @@ -137,7 +137,7 @@ class FormatOnType implements editorCommon.IEditorContribution { } public dispose(): void { - this.callOnDispose = disposeAll(this.callOnDispose); + this.callOnDispose = dispose(this.callOnDispose); while (this.callOnModel.length > 0) { this.callOnModel.pop()(); } diff --git a/src/vs/editor/contrib/gotoError/browser/gotoError.ts b/src/vs/editor/contrib/gotoError/browser/gotoError.ts index 96327730c00..e553795711e 100644 --- a/src/vs/editor/contrib/gotoError/browser/gotoError.ts +++ b/src/vs/editor/contrib/gotoError/browser/gotoError.ts @@ -10,7 +10,7 @@ import * as nls from 'vs/nls'; import {onUnexpectedError} from 'vs/base/common/errors'; import {Emitter} from 'vs/base/common/event'; import {CommonKeybindings, KeyCode, KeyMod} from 'vs/base/common/keyCodes'; -import {IDisposable, cAll, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, cAll, dispose} from 'vs/base/common/lifecycle'; import severity from 'vs/base/common/severity'; import * as strings from 'vs/base/common/strings'; import URI from 'vs/base/common/uri'; @@ -296,7 +296,7 @@ class MarkerNavigationWidget extends ZoneWidget { break; } - this._localCleanup = disposeAll(this._localCleanup); + this._localCleanup = dispose(this._localCleanup); // update label and show let text = strings.format('({0}/{1}) ', this._model.indexOf(marker) + 1, this._model.length()); @@ -379,7 +379,7 @@ class MarkerNavigationWidget extends ZoneWidget { } public dispose(): void { - this._callOnDispose = disposeAll(this._callOnDispose); + this._callOnDispose = dispose(this._callOnDispose); super.dispose(); } } @@ -448,7 +448,7 @@ class MarkerController implements editorCommon.IEditorContribution { private _cleanUp(): void { this._markersNavigationVisible.reset(); - this._callOnClose = disposeAll(this._callOnClose); + this._callOnClose = dispose(this._callOnClose); this._zone = null; this._model = null; } diff --git a/src/vs/editor/contrib/hover/browser/hoverWidgets.ts b/src/vs/editor/contrib/hover/browser/hoverWidgets.ts index c0e4d5de15e..a08e89d4475 100644 --- a/src/vs/editor/contrib/hover/browser/hoverWidgets.ts +++ b/src/vs/editor/contrib/hover/browser/hoverWidgets.ts @@ -5,7 +5,7 @@ 'use strict'; import {CommonKeybindings} from 'vs/base/common/keyCodes'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as dom from 'vs/base/browser/dom'; import {IKeyboardEvent} from 'vs/base/browser/keyboardEvent'; import {StyleMutator} from 'vs/base/browser/styleMutator'; @@ -112,7 +112,7 @@ export class ContentHoverWidget implements editorBrowser.IContentWidget { public dispose(): void { this.hide(); - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } } diff --git a/src/vs/editor/contrib/iPadShowKeyboard/browser/iPadShowKeyboard.ts b/src/vs/editor/contrib/iPadShowKeyboard/browser/iPadShowKeyboard.ts index 22b0f73ef29..ab7c931c9a3 100644 --- a/src/vs/editor/contrib/iPadShowKeyboard/browser/iPadShowKeyboard.ts +++ b/src/vs/editor/contrib/iPadShowKeyboard/browser/iPadShowKeyboard.ts @@ -6,7 +6,7 @@ 'use strict'; import 'vs/css!./iPadShowKeyboard'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as browser from 'vs/base/browser/browser'; import * as dom from 'vs/base/browser/dom'; import {EventType, IEditorContribution} from 'vs/editor/common/editorCommon'; @@ -51,7 +51,7 @@ export class IPadShowKeyboard implements IEditorContribution { } public dispose(): void { - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); if (this.widget) { this.widget.dispose(); this.widget = null; @@ -86,7 +86,7 @@ class ShowKeyboardWidget implements IOverlayWidget { public dispose(): void { this.editor.removeOverlayWidget(this); - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } // ----- IOverlayWidget API diff --git a/src/vs/editor/contrib/outlineMarker/browser/outlineMarker.ts b/src/vs/editor/contrib/outlineMarker/browser/outlineMarker.ts index dde16fe92df..4808c56febd 100644 --- a/src/vs/editor/contrib/outlineMarker/browser/outlineMarker.ts +++ b/src/vs/editor/contrib/outlineMarker/browser/outlineMarker.ts @@ -8,7 +8,7 @@ import 'vs/css!./outlineMarker'; import {RunOnceScheduler} from 'vs/base/common/async'; import {onUnexpectedError} from 'vs/base/common/errors'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {TPromise} from 'vs/base/common/winjs.base'; import {Range} from 'vs/editor/common/core/range'; import * as editorCommon from 'vs/editor/common/editorCommon'; @@ -146,14 +146,14 @@ export class OutlineMarkerContribution implements editorCommon.IEditorContributi public dispose(): void { this.localDispose(); - this._globalToDispose = disposeAll(this._globalToDispose); + this._globalToDispose = dispose(this._globalToDispose); } private localDispose(): void { if (this._currentOutlinePromise) { this._currentOutlinePromise.cancel(); } - this._localToDispose = disposeAll(this._localToDispose); + this._localToDispose = dispose(this._localToDispose); } public getId():string { diff --git a/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.ts b/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.ts index 143f2f6e0ba..378e623634a 100644 --- a/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.ts +++ b/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.ts @@ -7,7 +7,7 @@ import {ThrottledDelayer} from 'vs/base/common/async'; import {onUnexpectedError} from 'vs/base/common/errors'; import {EventEmitter, IEventEmitter, ListenerCallback} from 'vs/base/common/eventEmitter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {TPromise} from 'vs/base/common/winjs.base'; import {EventType, ICommonCodeEditor, ICursorSelectionChangedEvent, IModeSupportChangedEvent} from 'vs/editor/common/editorCommon'; import {IParameterHints} from 'vs/editor/common/modes'; @@ -96,7 +96,7 @@ export class ParameterHintsModel extends EventEmitter { } private onModelChanged(): void { - this.triggerCharactersListeners = disposeAll(this.triggerCharactersListeners); + this.triggerCharactersListeners = dispose(this.triggerCharactersListeners); var model = this.editor.getModel(); if (!model) { @@ -145,8 +145,8 @@ export class ParameterHintsModel extends EventEmitter { public dispose(): void { this.cancel(true); - this.triggerCharactersListeners = disposeAll(this.triggerCharactersListeners); - this.toDispose = disposeAll(this.toDispose); + this.triggerCharactersListeners = dispose(this.triggerCharactersListeners); + this.toDispose = dispose(this.toDispose); this.emit('destroy', null); diff --git a/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.ts b/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.ts index 289a38a4653..388decc2508 100644 --- a/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.ts +++ b/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.ts @@ -8,7 +8,7 @@ import 'vs/css!./parameterHints'; import nls = require('vs/nls'); import {ListenerUnbind} from 'vs/base/common/eventEmitter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {TPromise} from 'vs/base/common/winjs.base'; import {Builder, $} from 'vs/base/browser/builder'; import aria = require('vs/base/browser/ui/aria/aria'); @@ -307,7 +307,7 @@ export class ParameterHintsWidget implements IContentWidget { } public destroy(): void { - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); this.releaseModel(); if (this.$overloads) { diff --git a/src/vs/editor/contrib/quickFix/browser/lightBulpWidget.ts b/src/vs/editor/contrib/quickFix/browser/lightBulpWidget.ts index 3ba2942af20..fdc61c32c49 100644 --- a/src/vs/editor/contrib/quickFix/browser/lightBulpWidget.ts +++ b/src/vs/editor/contrib/quickFix/browser/lightBulpWidget.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as dom from 'vs/base/browser/dom'; import {IPosition} from 'vs/editor/common/editorCommon'; import {Position} from 'vs/editor/common/core/position'; @@ -31,7 +31,7 @@ export class LightBulpWidget implements IContentWidget, IDisposable { public dispose(): void { this.editor.removeContentWidget(this); - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); } public getId(): string { diff --git a/src/vs/editor/contrib/quickFix/browser/quickFixModel.ts b/src/vs/editor/contrib/quickFix/browser/quickFixModel.ts index bb512c49961..ad421772c46 100644 --- a/src/vs/editor/contrib/quickFix/browser/quickFixModel.ts +++ b/src/vs/editor/contrib/quickFix/browser/quickFixModel.ts @@ -8,7 +8,7 @@ import * as arrays from 'vs/base/common/arrays'; import {RunOnceScheduler} from 'vs/base/common/async'; import {onUnexpectedError} from 'vs/base/common/errors'; import {EventEmitter} from 'vs/base/common/eventEmitter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as timer from 'vs/base/common/timer'; import URI from 'vs/base/common/uri'; import {TPromise} from 'vs/base/common/winjs.base'; @@ -350,7 +350,7 @@ export class QuickFixModel extends EventEmitter { } private localDispose(): void { - this.toLocalDispose = disposeAll(this.toLocalDispose); + this.toLocalDispose = dispose(this.toLocalDispose); if (this.quickFixRequestPromise) { this.quickFixRequestPromise.cancel(); this.quickFixRequestPromise = null; @@ -359,7 +359,7 @@ export class QuickFixModel extends EventEmitter { public dispose(): void { this.localDispose(); - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); this.emit('destroy', null); } diff --git a/src/vs/editor/contrib/referenceSearch/browser/referenceSearchWidget.ts b/src/vs/editor/contrib/referenceSearch/browser/referenceSearchWidget.ts index d7168594a52..162268ab982 100644 --- a/src/vs/editor/contrib/referenceSearch/browser/referenceSearchWidget.ts +++ b/src/vs/editor/contrib/referenceSearch/browser/referenceSearchWidget.ts @@ -9,7 +9,7 @@ import * as nls from 'vs/nls'; import * as collections from 'vs/base/common/collections'; import {onUnexpectedError} from 'vs/base/common/errors'; import {getPathLabel} from 'vs/base/common/labels'; -import {IDisposable, cAll, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, cAll, dispose} from 'vs/base/common/lifecycle'; import {Schemas} from 'vs/base/common/network'; import * as strings from 'vs/base/common/strings'; import URI from 'vs/base/common/uri'; @@ -494,7 +494,7 @@ export class ReferenceWidget extends PeekViewWidget { public setModel(newModel: ReferencesModel): void { // clean up - this.callOnModel = disposeAll(this.callOnModel); + this.callOnModel = dispose(this.callOnModel); this.model = newModel; if (this.model) { this._onNewModel(); @@ -617,7 +617,7 @@ export class ReferenceWidget extends PeekViewWidget { public dispose(): void { this.setModel(null); - disposeAll([this.preview, this.previewNotAvailableMessage, this.tree]); + dispose([this.preview, this.previewNotAvailableMessage, this.tree]); super.dispose(); } } \ No newline at end of file diff --git a/src/vs/editor/contrib/rename/browser/renameInputField.ts b/src/vs/editor/contrib/rename/browser/renameInputField.ts index 1a93da7eac1..1be1181db2c 100644 --- a/src/vs/editor/contrib/rename/browser/renameInputField.ts +++ b/src/vs/editor/contrib/rename/browser/renameInputField.ts @@ -8,7 +8,7 @@ import 'vs/css!./rename'; import {localize} from 'vs/nls'; import {canceled} from 'vs/base/common/errors'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {TPromise} from 'vs/base/common/winjs.base'; import {Range} from 'vs/editor/common/core/range'; import {EventType, IPosition, IRange} from 'vs/editor/common/editorCommon'; @@ -85,7 +85,7 @@ export default class RenameInputField implements IContentWidget, IDisposable { always: Function; always = () => { - disposeAll(disposeOnDone); + dispose(disposeOnDone); this._hide(); }; diff --git a/src/vs/editor/contrib/suggest/browser/suggest.ts b/src/vs/editor/contrib/suggest/browser/suggest.ts index 7215104d4d5..7196b07b29c 100644 --- a/src/vs/editor/contrib/suggest/browser/suggest.ts +++ b/src/vs/editor/contrib/suggest/browser/suggest.ts @@ -7,7 +7,7 @@ import * as nls from 'vs/nls'; import {onUnexpectedError} from 'vs/base/common/errors'; import {KeyCode, KeyMod} from 'vs/base/common/keyCodes'; -import {IDisposable, cAll, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, cAll, dispose} from 'vs/base/common/lifecycle'; import {TPromise} from 'vs/base/common/winjs.base'; import {IInstantiationService} from 'vs/platform/instantiation/common/instantiation'; import {IKeybindingContextKey, IKeybindingService, KbExpr} from 'vs/platform/keybinding/common/keybindingService'; @@ -70,7 +70,7 @@ export class SuggestController implements IEditorContribution { } public dispose(): void { - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); this.triggerCharacterListeners = cAll(this.triggerCharacterListeners); if (this.widget) { diff --git a/src/vs/editor/contrib/suggest/browser/suggestModel.ts b/src/vs/editor/contrib/suggest/browser/suggestModel.ts index c5f1ad7c645..78849b38d2f 100644 --- a/src/vs/editor/contrib/suggest/browser/suggestModel.ts +++ b/src/vs/editor/contrib/suggest/browser/suggestModel.ts @@ -6,7 +6,7 @@ import {onUnexpectedError} from 'vs/base/common/errors'; import Event, { Emitter } from 'vs/base/common/event'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {startsWith} from 'vs/base/common/strings'; import {TPromise} from 'vs/base/common/winjs.base'; import {EventType, ICommonCodeEditor, ICursorSelectionChangedEvent, IPosition} from 'vs/editor/common/editorCommon'; @@ -387,6 +387,6 @@ export class SuggestModel implements IDisposable { public dispose(): void { this.cancel(true); - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); } } diff --git a/src/vs/editor/contrib/suggest/browser/suggestWidget.ts b/src/vs/editor/contrib/suggest/browser/suggestWidget.ts index 46fac952e99..87332ecba02 100644 --- a/src/vs/editor/contrib/suggest/browser/suggestWidget.ts +++ b/src/vs/editor/contrib/suggest/browser/suggestWidget.ts @@ -10,7 +10,7 @@ import * as nls from 'vs/nls'; import * as strings from 'vs/base/common/strings'; import {isPromiseCanceledError, onUnexpectedError} from 'vs/base/common/errors'; import Event, { Emitter } from 'vs/base/common/event'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as timer from 'vs/base/common/timer'; import {TPromise} from 'vs/base/common/winjs.base'; import {addClass, append, emmet as $, hide, removeClass, show, toggleClass} from 'vs/base/browser/dom'; @@ -818,7 +818,7 @@ export class SuggestWidget implements IContentWidget, IDisposable { this.details = null; this.list.dispose(); this.list = null; - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); this._onDidVisibilityChange.dispose(); this._onDidVisibilityChange = null; clearTimeout(this.loadingTimeout); diff --git a/src/vs/editor/contrib/workerStatusReporter/browser/workerStatusReporter.ts b/src/vs/editor/contrib/workerStatusReporter/browser/workerStatusReporter.ts index c031a8aaa04..31d8aa7b521 100644 --- a/src/vs/editor/contrib/workerStatusReporter/browser/workerStatusReporter.ts +++ b/src/vs/editor/contrib/workerStatusReporter/browser/workerStatusReporter.ts @@ -6,7 +6,7 @@ 'use strict'; import 'vs/css!./workerStatusReporter'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import * as browser from 'vs/base/browser/browser'; import {IThreadService, IThreadServiceStatus, IThreadServiceStatusListener} from 'vs/platform/thread/common/thread'; import {IEditorContribution} from 'vs/editor/common/editorCommon'; @@ -46,7 +46,7 @@ class WorkerStatusReporter implements IEditorContribution, IThreadServiceStatusL public dispose(): void { this._threadService.removeStatusListener(this); - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } public getDomNode():HTMLElement { diff --git a/src/vs/languages/typescript/common/typescriptMode.ts b/src/vs/languages/typescript/common/typescriptMode.ts index 121b0b4183a..24057089da6 100644 --- a/src/vs/languages/typescript/common/typescriptMode.ts +++ b/src/vs/languages/typescript/common/typescriptMode.ts @@ -297,7 +297,7 @@ export class TypeScriptMode extend } public dispose(): void { - this._disposables = lifecycle.disposeAll(this._disposables); + this._disposables = lifecycle.dispose(this._disposables); } _shouldBeValidated(model: EditorCommon.IModel): boolean { diff --git a/src/vs/languages/typescript/common/typescriptWorker2.ts b/src/vs/languages/typescript/common/typescriptWorker2.ts index 6e4959e51c9..53c3ca1dbce 100644 --- a/src/vs/languages/typescript/common/typescriptWorker2.ts +++ b/src/vs/languages/typescript/common/typescriptWorker2.ts @@ -77,7 +77,7 @@ export class TypeScriptWorker2 { this._modelListener[key](); delete this._modelListener[key]; } - this._disposables = lifecycle.disposeAll(this._disposables); + this._disposables = lifecycle.dispose(this._disposables); } // ---- typescript project diff --git a/src/vs/platform/contextview/browser/contextMenuHandler.ts b/src/vs/platform/contextview/browser/contextMenuHandler.ts index d16756177f9..4aa68161c90 100644 --- a/src/vs/platform/contextview/browser/contextMenuHandler.ts +++ b/src/vs/platform/contextview/browser/contextMenuHandler.ts @@ -111,7 +111,7 @@ export class ContextMenuHandler { menu.focus(); - return Lifecycle.combinedDispose(listener1, listener2, menu); + return Lifecycle.combinedDisposable(listener1, listener2, menu); }, onHide: (didCancel?: boolean) => { diff --git a/src/vs/platform/extensions/common/nativeExtensionService.ts b/src/vs/platform/extensions/common/nativeExtensionService.ts index 2c524db3be9..166610a977a 100644 --- a/src/vs/platform/extensions/common/nativeExtensionService.ts +++ b/src/vs/platform/extensions/common/nativeExtensionService.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; -import {disposeAll} from 'vs/base/common/lifecycle'; +import {dispose} from 'vs/base/common/lifecycle'; import {IDisposable} from 'vs/base/common/lifecycle'; import * as paths from 'vs/base/common/paths'; import Severity from 'vs/base/common/severity'; @@ -296,7 +296,7 @@ export class ExtHostExtensionService extends AbstractExtensionService { - disposeAll(this._textEditorsListenersMap[editorId]); + dispose(this._textEditorsListenersMap[editorId]); }); this._textEditorsListenersMap = Object.create(null); - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } private _onTextEditorAdd(textEditor: MainThreadTextEditor): void { @@ -537,7 +537,7 @@ export class MainThreadEditors { private _onTextEditorRemove(textEditor: MainThreadTextEditor): void { let id = textEditor.getId(); - disposeAll(this._textEditorsListenersMap[id]); + dispose(this._textEditorsListenersMap[id]); delete this._textEditorsListenersMap[id]; delete this._textEditorsMap[id]; this._proxy._acceptTextEditorRemove(id); diff --git a/src/vs/workbench/api/node/extHostLanguageFeatures.ts b/src/vs/workbench/api/node/extHostLanguageFeatures.ts index 501c71b8a6a..4aabdbc49df 100644 --- a/src/vs/workbench/api/node/extHostLanguageFeatures.ts +++ b/src/vs/workbench/api/node/extHostLanguageFeatures.ts @@ -7,7 +7,7 @@ import URI from 'vs/base/common/uri'; import {DefaultFilter} from 'vs/editor/common/modes/modesFilters'; import {TPromise} from 'vs/base/common/winjs.base'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {Remotable, IThreadService} from 'vs/platform/thread/common/thread'; import {Range as EditorRange} from 'vs/editor/common/core/range'; import * as vscode from 'vscode'; @@ -115,7 +115,7 @@ class CodeLensAdapter implements modes.ICodeLensSupport { return new ShallowCancelThenPromise(newCodeLensData.then(newCached => { if (entry) { // only now dispose old commands et al - entry.data.then(oldCached => disposeAll(oldCached.disposables)); + entry.data.then(oldCached => dispose(oldCached.disposables)); } return newCached && newCached.symbols; })); @@ -320,7 +320,7 @@ class QuickFixAdapter implements modes.IQuickFixSupport { return diag; }); - this._cachedCommands = disposeAll(this._cachedCommands); + this._cachedCommands = dispose(this._cachedCommands); const ctx = { commands: this._commands, disposables: this._cachedCommands }; return asWinJsPromise(token => this._provider.provideCodeActions(doc, ran, { diagnostics: diagnostics }, token)).then(commands => { diff --git a/src/vs/workbench/api/node/mainThreadEditors.ts b/src/vs/workbench/api/node/mainThreadEditors.ts index 5b691479b44..f5a2600054f 100644 --- a/src/vs/workbench/api/node/mainThreadEditors.ts +++ b/src/vs/workbench/api/node/mainThreadEditors.ts @@ -9,7 +9,7 @@ import Event, {Emitter} from 'vs/base/common/event'; import {IEditor} from 'vs/platform/editor/common/editor'; import {ICodeEditorService} from 'vs/editor/common/services/codeEditorService'; import {IModelService} from 'vs/editor/common/services/modelService'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {RunOnceScheduler} from 'vs/base/common/async'; import {Range} from 'vs/editor/common/core/range'; import {Selection} from 'vs/editor/common/core/selection'; @@ -99,9 +99,9 @@ export class MainThreadTextEditor { public dispose(): void { this._model = null; - this._modelListeners = disposeAll(this._modelListeners); + this._modelListeners = dispose(this._modelListeners); this._codeEditor = null; - this._codeEditorListeners = disposeAll(this._codeEditorListeners); + this._codeEditorListeners = dispose(this._codeEditorListeners); } public getId(): string { @@ -121,7 +121,7 @@ export class MainThreadTextEditor { // Nothing to do... return; } - this._codeEditorListeners = disposeAll(this._codeEditorListeners); + this._codeEditorListeners = dispose(this._codeEditorListeners); this._codeEditor = codeEditor; if (this._codeEditor) { @@ -387,7 +387,7 @@ export class MainThreadEditorsTracker { } public dispose(): void { - this._toDispose = disposeAll(this._toDispose); + this._toDispose = dispose(this._toDispose); } private _onModelAdded(model: EditorCommon.IModel): void { diff --git a/src/vs/workbench/browser/parts/editor/editorStatus.ts b/src/vs/workbench/browser/parts/editor/editorStatus.ts index ddf8255ff1a..39706ac3f6e 100644 --- a/src/vs/workbench/browser/parts/editor/editorStatus.ts +++ b/src/vs/workbench/browser/parts/editor/editorStatus.ts @@ -19,7 +19,7 @@ import {Action} from 'vs/base/common/actions'; import {IMode} from 'vs/editor/common/modes'; import {UntitledEditorInput} from 'vs/workbench/common/editor/untitledEditorInput'; import {IFileEditorInput, EncodingMode, IEncodingSupport, asFileEditorInput, getUntitledOrFileResource} from 'vs/workbench/common/editor'; -import {IDisposable, combinedDispose} from 'vs/base/common/lifecycle'; +import {IDisposable, combinedDisposable} from 'vs/base/common/lifecycle'; import {IMessageService, Severity} from 'vs/platform/message/common/message'; import {ICommonCodeEditor} from 'vs/editor/common/editorCommon'; import {OpenGlobalSettingsAction} from 'vs/workbench/browser/actions/openSettings'; @@ -272,7 +272,7 @@ export class EditorStatus implements IStatusbarItem { this.eventService.addListener2(EventType.TEXT_EDITOR_CONTENT_OPTIONS_CHANGED, (e: EditorEvent) => this.onIndentationChange(e.editor)) ); - return combinedDispose(...this.toDispose); + return combinedDisposable(this.toDispose); } private updateState(update: StateDelta): void { diff --git a/src/vs/workbench/browser/parts/statusbar/statusbarPart.ts b/src/vs/workbench/browser/parts/statusbar/statusbarPart.ts index cd43252e9d4..7f7e42d42e5 100644 --- a/src/vs/workbench/browser/parts/statusbar/statusbarPart.ts +++ b/src/vs/workbench/browser/parts/statusbar/statusbarPart.ts @@ -11,7 +11,7 @@ import types = require('vs/base/common/types'); import nls = require('vs/nls'); import {toErrorMessage} from 'vs/base/common/errors'; import {TPromise} from 'vs/base/common/winjs.base'; -import {disposeAll, IDisposable} from 'vs/base/common/lifecycle'; +import {dispose, IDisposable} from 'vs/base/common/lifecycle'; import {Builder, $} from 'vs/base/browser/builder'; import {OcticonLabel} from 'vs/base/browser/ui/octiconLabel/octiconLabel'; import {Registry} from 'vs/platform/platform'; @@ -145,7 +145,7 @@ export class StatusbarPart extends Part implements IStatusbarService { } public dispose(): void { - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); super.dispose(); } @@ -196,7 +196,7 @@ class StatusBarEntryItem implements IStatusbarItem { return { dispose: () => { - toDispose = disposeAll(toDispose); + toDispose = dispose(toDispose); } }; } diff --git a/src/vs/workbench/browser/viewlet.ts b/src/vs/workbench/browser/viewlet.ts index 688468aaa6d..6d5d2f32c6c 100644 --- a/src/vs/workbench/browser/viewlet.ts +++ b/src/vs/workbench/browser/viewlet.ts @@ -15,7 +15,7 @@ import {ITree, IFocusEvent, ISelectionEvent} from 'vs/base/parts/tree/browser/tr import {prepareActions} from 'vs/workbench/browser/actionBarRegistry'; import {ToolBar} from 'vs/base/browser/ui/toolbar/toolbar'; import {DelayedDragHandler} from 'vs/base/browser/dnd'; -import {disposeAll, IDisposable} from 'vs/base/common/lifecycle'; +import {dispose, IDisposable} from 'vs/base/common/lifecycle'; import {CollapsibleView, CollapsibleState, FixedCollapsibleView} from 'vs/base/browser/ui/splitview/splitview'; import {IViewletService} from 'vs/workbench/services/viewlet/common/viewletService'; import {IWorkbenchEditorService} from 'vs/workbench/services/editor/common/editorService'; @@ -402,7 +402,7 @@ export class AdaptiveCollapsibleViewletView extends FixedCollapsibleView impleme this.dragHandler.dispose(); - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); if (this.toolBar) { this.toolBar.dispose(); @@ -529,7 +529,7 @@ export class CollapsibleViewletView extends CollapsibleView implements IViewletV this.dragHandler.dispose(); - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); if (this.toolBar) { this.toolBar.dispose(); diff --git a/src/vs/workbench/browser/workbench.ts b/src/vs/workbench/browser/workbench.ts index 5f10c2c3d12..04d1350efbd 100644 --- a/src/vs/workbench/browser/workbench.ts +++ b/src/vs/workbench/browser/workbench.ts @@ -8,7 +8,7 @@ import 'vs/css!./media/workbench'; import {TPromise, ValueCallback} from 'vs/base/common/winjs.base'; import types = require('vs/base/common/types'); -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import strings = require('vs/base/common/strings'); import DOM = require('vs/base/browser/dom'); import {Box, Builder, withElementById, $} from 'vs/base/browser/builder'; @@ -649,7 +649,7 @@ export class Workbench implements IPartService { public dispose(): void { // Dispose all - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); // Event this.eventService.emit(EventType.WORKBENCH_DISPOSED); diff --git a/src/vs/workbench/electron-browser/shell.ts b/src/vs/workbench/electron-browser/shell.ts index a6fd4a3e78f..b22e3f5dcf1 100644 --- a/src/vs/workbench/electron-browser/shell.ts +++ b/src/vs/workbench/electron-browser/shell.ts @@ -17,7 +17,7 @@ import {Dimension, Builder, $} from 'vs/base/browser/builder'; import objects = require('vs/base/common/objects'); import dom = require('vs/base/browser/dom'); import aria = require('vs/base/browser/ui/aria/aria'); -import {disposeAll, IDisposable} from 'vs/base/common/lifecycle'; +import {dispose, IDisposable} from 'vs/base/common/lifecycle'; import errors = require('vs/base/common/errors'); import {ContextViewService} from 'vs/platform/contextview/browser/contextViewService'; import {ContextMenuService} from 'vs/workbench/services/contextview/electron-browser/contextmenuService'; @@ -509,7 +509,7 @@ export class WorkbenchShell { this.storageService.dispose(); // Listeners - this.toUnbind = disposeAll(this.toUnbind); + this.toUnbind = dispose(this.toUnbind); // Container $(this.container).empty(); diff --git a/src/vs/workbench/parts/debug/browser/breakpointWidget.ts b/src/vs/workbench/parts/debug/browser/breakpointWidget.ts index 50edaecfdd6..c98d27a3fa7 100644 --- a/src/vs/workbench/parts/debug/browser/breakpointWidget.ts +++ b/src/vs/workbench/parts/debug/browser/breakpointWidget.ts @@ -103,7 +103,7 @@ export class BreakpointWidget extends ZoneWidget { super.dispose(); this.breakpointWidgetVisible.reset(); BreakpointWidget.INSTANCE = undefined; - lifecycle.disposeAll(this.toDispose); + lifecycle.dispose(this.toDispose); setTimeout(() => this.editor.focus(), 0); } } diff --git a/src/vs/workbench/parts/debug/browser/debugActionItems.ts b/src/vs/workbench/parts/debug/browser/debugActionItems.ts index 1d03f18a201..12a8249dedf 100644 --- a/src/vs/workbench/parts/debug/browser/debugActionItems.ts +++ b/src/vs/workbench/parts/debug/browser/debugActionItems.ts @@ -106,7 +106,7 @@ export class SelectConfigActionItem extends BaseActionItem { public dispose(): void { this.debugService = null; - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); super.dispose(); } diff --git a/src/vs/workbench/parts/debug/browser/debugActionsWidget.ts b/src/vs/workbench/parts/debug/browser/debugActionsWidget.ts index 688b21ecac9..e1b603139b9 100644 --- a/src/vs/workbench/parts/debug/browser/debugActionsWidget.ts +++ b/src/vs/workbench/parts/debug/browser/debugActionsWidget.ts @@ -128,7 +128,7 @@ export class DebugActionsWidget implements wbext.IWorkbenchContribution { } public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); if (this.$el) { this.$el.destroy(); diff --git a/src/vs/workbench/parts/debug/browser/debugEditorContribution.ts b/src/vs/workbench/parts/debug/browser/debugEditorContribution.ts index 869d22f2f52..087f68f0a8e 100644 --- a/src/vs/workbench/parts/debug/browser/debugEditorContribution.ts +++ b/src/vs/workbench/parts/debug/browser/debugEditorContribution.ts @@ -214,6 +214,6 @@ export class DebugEditorContribution implements debug.IDebugEditorContribution { }; public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); } } diff --git a/src/vs/workbench/parts/debug/browser/debugEditorModelManager.ts b/src/vs/workbench/parts/debug/browser/debugEditorModelManager.ts index 6c65329b4fb..3fda32f6a7a 100644 --- a/src/vs/workbench/parts/debug/browser/debugEditorModelManager.ts +++ b/src/vs/workbench/parts/debug/browser/debugEditorModelManager.ts @@ -65,12 +65,12 @@ export class DebugEditorModelManager implements IWorkbenchContribution { for (let modelUrlStr in this.modelData) { if (this.modelData.hasOwnProperty(modelUrlStr)) { const modelData = this.modelData[modelUrlStr]; - lifecycle.disposeAll(modelData.toDispose); + lifecycle.dispose(modelData.toDispose); modelData.model.deltaDecorations(modelData.breakpointDecorationIds, []); modelData.model.deltaDecorations(modelData.currentStackDecorations, []); } } - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); this.modelData = null; } @@ -117,7 +117,7 @@ export class DebugEditorModelManager implements IWorkbenchContribution { const modelData = this.modelData[modelUrlStr]; delete this.modelData[modelUrlStr]; - lifecycle.disposeAll(modelData.toDispose); + lifecycle.dispose(modelData.toDispose); } } diff --git a/src/vs/workbench/parts/debug/browser/debugHover.ts b/src/vs/workbench/parts/debug/browser/debugHover.ts index 89486c8852a..17a0948c125 100644 --- a/src/vs/workbench/parts/debug/browser/debugHover.ts +++ b/src/vs/workbench/parts/debug/browser/debugHover.ts @@ -237,7 +237,7 @@ export class DebugHoverWidget implements editorbrowser.IContentWidget { } public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); } } diff --git a/src/vs/workbench/parts/debug/browser/debugViewer.ts b/src/vs/workbench/parts/debug/browser/debugViewer.ts index 0a2a5f069be..bac115310ce 100644 --- a/src/vs/workbench/parts/debug/browser/debugViewer.ts +++ b/src/vs/workbench/parts/debug/browser/debugViewer.ts @@ -112,7 +112,7 @@ function renderRenameBox(debugService: debug.IDebugService, contextViewService: // need to remove the input box since this template will be reused. container.removeChild(inputBoxContainer); - lifecycle.disposeAll(toDispose); + lifecycle.dispose(toDispose); } }); @@ -635,7 +635,7 @@ export class WatchExpressionsRenderer implements tree.IRenderer { } public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); } } @@ -868,7 +868,7 @@ export class BreakpointsRenderer implements tree.IRenderer { } public renderElement(tree: tree.ITree, element: any, templateId: string, templateData: any): void { - templateData.toDisposeBeforeRender = lifecycle.disposeAll(templateData.toDisposeBeforeRender); + templateData.toDisposeBeforeRender = lifecycle.dispose(templateData.toDisposeBeforeRender); templateData.toDisposeBeforeRender.push(dom.addStandardDisposableListener(templateData.checkbox, 'change', (e) => { this.debugService.toggleEnablement(element); })); diff --git a/src/vs/workbench/parts/debug/browser/debugViewlet.ts b/src/vs/workbench/parts/debug/browser/debugViewlet.ts index 6260ff622a1..cb23f288934 100644 --- a/src/vs/workbench/parts/debug/browser/debugViewlet.ts +++ b/src/vs/workbench/parts/debug/browser/debugViewlet.ts @@ -576,7 +576,7 @@ export class DebugViewlet extends viewlet.Viewlet { } public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); super.dispose(); } diff --git a/src/vs/workbench/parts/debug/browser/repl.ts b/src/vs/workbench/parts/debug/browser/repl.ts index c411a7a10ec..6ee3d2f742a 100644 --- a/src/vs/workbench/parts/debug/browser/repl.ts +++ b/src/vs/workbench/parts/debug/browser/repl.ts @@ -182,7 +182,7 @@ export class Repl extends Panel { public dispose(): void { // destroy container - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); super.dispose(); } diff --git a/src/vs/workbench/parts/debug/common/debugModel.ts b/src/vs/workbench/parts/debug/common/debugModel.ts index 0a21cdc0b25..743e34de983 100644 --- a/src/vs/workbench/parts/debug/common/debugModel.ts +++ b/src/vs/workbench/parts/debug/common/debugModel.ts @@ -722,6 +722,6 @@ export class Model extends ee.EventEmitter implements debug.IModel { this.functionBreakpoints = null; this.watchExpressions = null; this.replElements = null; - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); } } diff --git a/src/vs/workbench/parts/debug/electron-browser/debugActions.ts b/src/vs/workbench/parts/debug/electron-browser/debugActions.ts index 035c485ae11..09a4745a9bb 100644 --- a/src/vs/workbench/parts/debug/electron-browser/debugActions.ts +++ b/src/vs/workbench/parts/debug/electron-browser/debugActions.ts @@ -68,7 +68,7 @@ export class AbstractDebugAction extends actions.Action { public dispose(): void { this.debugService = null; - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); super.dispose(); } diff --git a/src/vs/workbench/parts/debug/electron-browser/debugService.ts b/src/vs/workbench/parts/debug/electron-browser/debugService.ts index d1b1d2bb45a..15818741395 100644 --- a/src/vs/workbench/parts/debug/electron-browser/debugService.ts +++ b/src/vs/workbench/parts/debug/electron-browser/debugService.ts @@ -715,7 +715,7 @@ export class DebugService extends ee.EventEmitter implements debug.IDebugService private onSessionEnd(): void { try { - this.debugStringEditorInputs = lifecycle.disposeAll(this.debugStringEditorInputs); + this.debugStringEditorInputs = lifecycle.dispose(this.debugStringEditorInputs); } catch (e) { // an internal module might be open so the dispose can throw -> ignore and continue with stop session. } @@ -733,7 +733,7 @@ export class DebugService extends ee.EventEmitter implements debug.IDebugService } this.session = null; - this.toDisposeOnSessionEnd = lifecycle.disposeAll(this.toDisposeOnSessionEnd); + this.toDisposeOnSessionEnd = lifecycle.dispose(this.toDisposeOnSessionEnd); this.partService.removeClass('debugging'); this.editorService.focusEditor(); @@ -942,7 +942,7 @@ export class DebugService extends ee.EventEmitter implements debug.IDebugService this.session = null; } this.model.dispose(); - this.toDispose = lifecycle.disposeAll(this.toDispose); - this.toDisposeOnSessionEnd = lifecycle.disposeAll(this.toDisposeOnSessionEnd); + this.toDispose = lifecycle.dispose(this.toDispose); + this.toDisposeOnSessionEnd = lifecycle.dispose(this.toDisposeOnSessionEnd); } } diff --git a/src/vs/workbench/parts/errorList/browser/errorList.ts b/src/vs/workbench/parts/errorList/browser/errorList.ts index 5ce3a43b59b..7978fac1927 100644 --- a/src/vs/workbench/parts/errorList/browser/errorList.ts +++ b/src/vs/workbench/parts/errorList/browser/errorList.ts @@ -157,7 +157,7 @@ export class ErrorList extends Panel { } public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); this.list.dispose(); super.dispose(); } diff --git a/src/vs/workbench/parts/extensions/electron-browser/extensionTipsService.ts b/src/vs/workbench/parts/extensions/electron-browser/extensionTipsService.ts index 98e78225293..eb4e745c8e4 100644 --- a/src/vs/workbench/parts/extensions/electron-browser/extensionTipsService.ts +++ b/src/vs/workbench/parts/extensions/electron-browser/extensionTipsService.ts @@ -5,7 +5,7 @@ import URI from 'vs/base/common/uri'; import {toObject} from 'vs/base/common/objects'; -import {IDisposable, disposeAll} from 'vs/base/common/lifecycle'; +import {IDisposable, dispose} from 'vs/base/common/lifecycle'; import {TPromise as Promise} from 'vs/base/common/winjs.base'; import {match} from 'vs/base/common/glob'; import {IGalleryService, IExtensionTipsService, IExtension} from 'vs/workbench/parts/extensions/common/extensions'; @@ -80,6 +80,6 @@ export class ExtensionTipsService implements IExtensionTipsService { } dispose() { - this._disposables = disposeAll(this._disposables); + this._disposables = dispose(this._disposables); } } diff --git a/src/vs/workbench/parts/extensions/electron-browser/extensionsQuickOpen.ts b/src/vs/workbench/parts/extensions/electron-browser/extensionsQuickOpen.ts index e95265c6465..c610c6b1e1d 100644 --- a/src/vs/workbench/parts/extensions/electron-browser/extensionsQuickOpen.ts +++ b/src/vs/workbench/parts/extensions/electron-browser/extensionsQuickOpen.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import nls = require('vs/nls'); -import { IDisposable, disposeAll } from 'vs/base/common/lifecycle'; +import { IDisposable, dispose } from 'vs/base/common/lifecycle'; import { TPromise } from 'vs/base/common/winjs.base'; import { isNumber } from 'vs/base/common/types'; import * as dom from 'vs/base/browser/dom'; @@ -256,7 +256,7 @@ class Renderer implements IRenderer { data.actionbar.context = extension; updateActions(); - data.disposables = disposeAll(data.disposables); + data.disposables = dispose(data.disposables); data.disposables.push(this.extensionsService.onDidInstallExtension(e => onExtensionStateChange(e.extension, ExtensionState.Installed))); data.disposables.push(this.extensionsService.onDidUninstallExtension(e => onExtensionStateChange(e, ExtensionState.Uninstalled))); @@ -290,7 +290,7 @@ class Renderer implements IRenderer { disposeTemplate(templateId: string, data: ITemplateData): void { data.displayName.dispose(); data.description.dispose(); - data.disposables = disposeAll(data.disposables); + data.disposables = dispose(data.disposables); } } diff --git a/src/vs/workbench/parts/extensions/electron-browser/extensionsWidgets.ts b/src/vs/workbench/parts/extensions/electron-browser/extensionsWidgets.ts index c6a6d71bdbd..ba67dfe8236 100644 --- a/src/vs/workbench/parts/extensions/electron-browser/extensionsWidgets.ts +++ b/src/vs/workbench/parts/extensions/electron-browser/extensionsWidgets.ts @@ -8,7 +8,7 @@ import Severity from 'vs/base/common/severity'; import { ThrottledDelayer } from 'vs/base/common/async'; import { TPromise } from 'vs/base/common/winjs.base'; import { emmet as $, append, toggleClass } from 'vs/base/browser/dom'; -import { IDisposable, combinedDispose } from 'vs/base/common/lifecycle'; +import { IDisposable, combinedDisposable } from 'vs/base/common/lifecycle'; import { onUnexpectedPromiseError } from 'vs/base/common/errors'; import { assign } from 'vs/base/common/objects'; import { IStatusbarItem } from 'vs/workbench/browser/parts/statusbar/statusbar'; @@ -64,7 +64,7 @@ export class ExtensionsStatusbarItem implements IStatusbarItem { this.extensionsService.onDidInstallExtension(this.onDidInstallExtension, this, disposables); this.extensionsService.onDidUninstallExtension(this.onDidUninstallExtension, this, disposables); - return combinedDispose(...disposables); + return combinedDisposable(disposables); } private updateState(obj: any): void { diff --git a/src/vs/workbench/parts/files/browser/fileActions.ts b/src/vs/workbench/parts/files/browser/fileActions.ts index ba2e522010c..c2061ff94f4 100644 --- a/src/vs/workbench/parts/files/browser/fileActions.ts +++ b/src/vs/workbench/parts/files/browser/fileActions.ts @@ -21,7 +21,7 @@ import diagnostics = require('vs/base/common/diagnostics'); import {Action, IAction} from 'vs/base/common/actions'; import {MessageType, IInputValidator} from 'vs/base/browser/ui/inputbox/inputBox'; import {ITree, IHighlightEvent} from 'vs/base/parts/tree/browser/tree'; -import {disposeAll, IDisposable} from 'vs/base/common/lifecycle'; +import {dispose, IDisposable} from 'vs/base/common/lifecycle'; import {EventType as WorkbenchEventType, EditorEvent} from 'vs/workbench/common/events'; import Files = require('vs/workbench/parts/files/common/files'); import {IFileService, IFileStat, IImportResult} from 'vs/platform/files/common/files'; @@ -1662,7 +1662,7 @@ export abstract class BaseSaveAllAction extends BaseActionWithErrorReporting { } public dispose(): void { - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); super.dispose(); } diff --git a/src/vs/workbench/parts/files/browser/views/explorerViewer.ts b/src/vs/workbench/parts/files/browser/views/explorerViewer.ts index 3184533e6b6..2d241896e7b 100644 --- a/src/vs/workbench/parts/files/browser/views/explorerViewer.ts +++ b/src/vs/workbench/parts/files/browser/views/explorerViewer.ts @@ -309,7 +309,7 @@ export class FileRenderer extends ActionsRenderer implements IRenderer { setTimeout(() => { tree.DOMFocus(); - lifecycle.disposeAll(toDispose); + lifecycle.dispose(toDispose); }, 0); }); diff --git a/src/vs/workbench/parts/files/common/workingFilesModel.ts b/src/vs/workbench/parts/files/common/workingFilesModel.ts index 00e30b1989e..a90f26adf13 100644 --- a/src/vs/workbench/parts/files/common/workingFilesModel.ts +++ b/src/vs/workbench/parts/files/common/workingFilesModel.ts @@ -10,7 +10,7 @@ import Event, {Emitter} from 'vs/base/common/event'; import paths = require('vs/base/common/paths'); import errors = require('vs/base/common/errors'); import labels = require('vs/base/common/labels'); -import {disposeAll, IDisposable} from 'vs/base/common/lifecycle'; +import {dispose, IDisposable} from 'vs/base/common/lifecycle'; import {ITextFileService, IWorkingFilesModel, IWorkingFileModelChangeEvent, IWorkingFileEntry, EventType, LocalFileChangeEvent, WORKING_FILES_MODEL_ENTRY_CLASS_ID, AutoSaveMode} from 'vs/workbench/parts/files/common/files'; import {IFileStat, FileChangeType, FileChangesEvent, EventType as FileEventType} from 'vs/platform/files/common/files'; import {UntitledEditorEvent, EventType as WorkbenchEventType, EditorEvent} from 'vs/workbench/common/events'; @@ -397,7 +397,7 @@ export class WorkingFilesModel implements IWorkingFilesModel { } public dispose(): void { - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); } private fireModelChange(event: IWorkingFileModelChangeEvent): void { diff --git a/src/vs/workbench/parts/files/test/browser/fileEditorInput.test.ts b/src/vs/workbench/parts/files/test/browser/fileEditorInput.test.ts index 59f36f4e5db..a9d2e559f6e 100644 --- a/src/vs/workbench/parts/files/test/browser/fileEditorInput.test.ts +++ b/src/vs/workbench/parts/files/test/browser/fileEditorInput.test.ts @@ -112,7 +112,7 @@ suite('Files - FileEditorInput', () => { assert.strictEqual(fileEditorInput.matches(contentEditorInput2), true); }); - test('FileTracker - disposeAll()', function(done) { + test('FileTracker - dispose()', function(done) { let editorService = new TestEditorService(function() { }); let telemetryService = new MainTelemetryService(); let contextService = new TestContextService(); @@ -142,11 +142,11 @@ suite('Files - FileEditorInput', () => { let sameOtherInput = instantiationService.createInstance(FileEditorInput, toResource('/fooss5/bar/file2.js'), 'text/javascript', void 0); return editorService.resolveEditorModel(inputToResolve).then(function(resolved) { return editorService.resolveEditorModel(sameOtherInput).then(function(resolved) { - (tracker).disposeAll(toResource('/bar'), []); + (tracker).dispose(toResource('/bar'), []); assert(!inputToResolve.isDisposed()); assert(!sameOtherInput.isDisposed()); - (tracker).disposeAll(toResource('/fooss5/bar/file2.js'), []); + (tracker).dispose(toResource('/fooss5/bar/file2.js'), []); assert(inputToResolve.isDisposed()); assert(sameOtherInput.isDisposed()); @@ -156,7 +156,7 @@ suite('Files - FileEditorInput', () => { }); }); - test('FileEditorInput - disposeAll() also works for folders', function(done) { + test('FileEditorInput - dispose() also works for folders', function(done) { let editorService = new TestEditorService(function() { }); let telemetryService = new MainTelemetryService(); let contextService = new TestContextService(); @@ -186,11 +186,11 @@ suite('Files - FileEditorInput', () => { let sameOtherInput = instantiationService.createInstance(FileEditorInput, toResource('/foo6/bar/file.js'), 'text/javascript', void 0); return editorService.resolveEditorModel(inputToResolve, true).then(function(resolved) { return editorService.resolveEditorModel(sameOtherInput, true).then(function(resolved) { - (tracker).disposeAll(toResource('/bar'), []); + (tracker).dispose(toResource('/bar'), []); assert(!inputToResolve.isDisposed()); assert(!sameOtherInput.isDisposed()); - (tracker).disposeAll(toResource('/foo6'), []); + (tracker).dispose(toResource('/foo6'), []); assert(inputToResolve.isDisposed()); assert(sameOtherInput.isDisposed()); diff --git a/src/vs/workbench/parts/git/browser/gitActions.contribution.ts b/src/vs/workbench/parts/git/browser/gitActions.contribution.ts index 158345cd455..94a87d31f8f 100644 --- a/src/vs/workbench/parts/git/browser/gitActions.contribution.ts +++ b/src/vs/workbench/parts/git/browser/gitActions.contribution.ts @@ -128,7 +128,7 @@ class OpenInDiffAction extends baseeditor.EditorInputAction { } public dispose():void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); } } diff --git a/src/vs/workbench/parts/git/browser/gitActions.ts b/src/vs/workbench/parts/git/browser/gitActions.ts index 7cc13f0b110..44efaae2758 100644 --- a/src/vs/workbench/parts/git/browser/gitActions.ts +++ b/src/vs/workbench/parts/git/browser/gitActions.ts @@ -8,7 +8,7 @@ import { Promise, TPromise } from 'vs/base/common/winjs.base'; import nls = require('vs/nls'); import { IEventEmitter } from 'vs/base/common/eventEmitter'; import { ITree } from 'vs/base/parts/tree/browser/tree'; -import { IDisposable, disposeAll } from 'vs/base/common/lifecycle'; +import { IDisposable, dispose } from 'vs/base/common/lifecycle'; import strings = require('vs/base/common/strings'); import { isString } from 'vs/base/common/types'; import { Action } from 'vs/base/common/actions'; @@ -89,7 +89,7 @@ export abstract class GitAction extends Action { public dispose(): void { this.gitService = null; - this.toDispose = disposeAll(this.toDispose); + this.toDispose = dispose(this.toDispose); super.dispose(); } diff --git a/src/vs/workbench/parts/git/browser/gitEditorInputs.ts b/src/vs/workbench/parts/git/browser/gitEditorInputs.ts index 1faaa309a9f..353177d8c25 100644 --- a/src/vs/workbench/parts/git/browser/gitEditorInputs.ts +++ b/src/vs/workbench/parts/git/browser/gitEditorInputs.ts @@ -160,7 +160,7 @@ export class NativeGitIndexStringEditorInput this.delayer = null; } - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); super.dispose(); } } diff --git a/src/vs/workbench/parts/git/browser/gitServices.ts b/src/vs/workbench/parts/git/browser/gitServices.ts index 924740d56da..c1d11bf2fba 100644 --- a/src/vs/workbench/parts/git/browser/gitServices.ts +++ b/src/vs/workbench/parts/git/browser/gitServices.ts @@ -237,7 +237,7 @@ class EditorInputCache delete this.cache[key]; }); - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); } } diff --git a/src/vs/workbench/parts/git/browser/gitViewlet.ts b/src/vs/workbench/parts/git/browser/gitViewlet.ts index a1f121b1efb..eca662512d4 100644 --- a/src/vs/workbench/parts/git/browser/gitViewlet.ts +++ b/src/vs/workbench/parts/git/browser/gitViewlet.ts @@ -210,7 +210,7 @@ export class GitViewlet } public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); this.views = null; super.dispose(); diff --git a/src/vs/workbench/parts/git/browser/gitWidgets.ts b/src/vs/workbench/parts/git/browser/gitWidgets.ts index 4371940a084..a2f0b4c56c8 100644 --- a/src/vs/workbench/parts/git/browser/gitWidgets.ts +++ b/src/vs/workbench/parts/git/browser/gitWidgets.ts @@ -7,7 +7,7 @@ import nls = require('vs/nls'); import strings = require('vs/base/common/strings'); import { Delayer } from 'vs/base/common/async'; import { emmet as $, append, show, hide, toggleClass } from 'vs/base/browser/dom'; -import { IDisposable, combinedDispose } from 'vs/base/common/lifecycle'; +import { IDisposable, combinedDisposable } from 'vs/base/common/lifecycle'; import { IGitService, ServiceState, IBranch, ServiceOperations, IRemote } from 'vs/workbench/parts/git/common/git'; import { IStatusbarItem } from 'vs/workbench/browser/parts/statusbar/statusbar'; import { IQuickOpenService } from 'vs/workbench/services/quickopen/common/quickOpenService'; @@ -92,7 +92,7 @@ export class GitStatusbarItem implements IStatusbarItem { this.setState(this.state); this.toDispose.push(this.gitService.addBulkListener2(() => this.onGitServiceChange())); - return combinedDispose(...this.toDispose); + return combinedDisposable(this.toDispose); } private onGitServiceChange(): void { diff --git a/src/vs/workbench/parts/git/browser/gitWorkbenchContributions.ts b/src/vs/workbench/parts/git/browser/gitWorkbenchContributions.ts index 14180292fa2..b6f78d7926c 100644 --- a/src/vs/workbench/parts/git/browser/gitWorkbenchContributions.ts +++ b/src/vs/workbench/parts/git/browser/gitWorkbenchContributions.ts @@ -101,7 +101,7 @@ export class StatusUpdater implements ext.IWorkbenchContribution } public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); } } @@ -304,7 +304,7 @@ class DirtyDiffModelDecorator { public dispose(): void { this.modelService.destroyModel(this._originalContentsURI); - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); if (this.model && !this.model.isDisposed()) { this.model.deltaDecorations(this.decorations, []); } @@ -423,7 +423,7 @@ export class DirtyDiffDecorator implements ext.IWorkbenchContribution { } public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); this.models.forEach(m => this.decorators[m.id].dispose()); this.models = null; this.decorators = null; diff --git a/src/vs/workbench/parts/git/browser/views/changes/changesView.ts b/src/vs/workbench/parts/git/browser/views/changes/changesView.ts index f6ba65ec074..f726f39779f 100644 --- a/src/vs/workbench/parts/git/browser/views/changes/changesView.ts +++ b/src/vs/workbench/parts/git/browser/views/changes/changesView.ts @@ -440,7 +440,7 @@ export class ChangesView extends EventEmitter.EventEmitter implements GitView.IV this.$el = null; } - this.toDispose = Lifecycle.disposeAll(this.toDispose); + this.toDispose = Lifecycle.dispose(this.toDispose); super.dispose(); } diff --git a/src/vs/workbench/parts/git/browser/views/empty/emptyView.ts b/src/vs/workbench/parts/git/browser/views/empty/emptyView.ts index f9211ca023f..3a0d3284e4f 100644 --- a/src/vs/workbench/parts/git/browser/views/empty/emptyView.ts +++ b/src/vs/workbench/parts/git/browser/views/empty/emptyView.ts @@ -183,7 +183,7 @@ export class EmptyView extends EventEmitter.EventEmitter implements GitView.IVie this.$el = null; } - this.toDispose = Lifecycle.disposeAll(this.toDispose); + this.toDispose = Lifecycle.dispose(this.toDispose); super.dispose(); } diff --git a/src/vs/workbench/parts/git/common/gitModel.ts b/src/vs/workbench/parts/git/common/gitModel.ts index 1f2b0b546f5..569c35fe4e9 100644 --- a/src/vs/workbench/parts/git/common/gitModel.ts +++ b/src/vs/workbench/parts/git/common/gitModel.ts @@ -284,7 +284,7 @@ export class StatusModel extends EventEmitter.EventEmitter implements Git.IStatu } public dispose(): void { - this.toDispose = Lifecycle.disposeAll(this.toDispose); + this.toDispose = Lifecycle.dispose(this.toDispose); if (this.indexStatus) { this.indexStatus.dispose(); @@ -411,7 +411,7 @@ export class Model extends EventEmitter.EventEmitter implements Git.IModel { } public dispose(): void { - this.toDispose = Lifecycle.disposeAll(this.toDispose); + this.toDispose = Lifecycle.dispose(this.toDispose); super.dispose(); } } diff --git a/src/vs/workbench/parts/git/node/git.lib.ts b/src/vs/workbench/parts/git/node/git.lib.ts index 824f1594057..13020326ed0 100644 --- a/src/vs/workbench/parts/git/node/git.lib.ts +++ b/src/vs/workbench/parts/git/node/git.lib.ts @@ -6,7 +6,7 @@ import { Promise, TPromise } from 'vs/base/common/winjs.base'; import extfs = require('vs/base/node/extfs'); import { guessMimeTypes, isBinaryMime } from 'vs/base/common/mime'; -import { IDisposable, toDisposable, disposeAll } from 'vs/base/common/lifecycle'; +import { IDisposable, toDisposable, dispose } from 'vs/base/common/lifecycle'; import objects = require('vs/base/common/objects'); import uuid = require('vs/base/common/uuid'); import nls = require('vs/nls'); @@ -52,7 +52,7 @@ function exec(child: ChildProcess, encoding = 'utf8'): TPromise c(decode(Buffer.concat(buffers), encoding))); }) ]).then(values => { - disposeAll(disposables); + dispose(disposables); return { exitCode: values[0], diff --git a/src/vs/workbench/parts/output/browser/outputPanel.ts b/src/vs/workbench/parts/output/browser/outputPanel.ts index 36f8f01ef08..9a7c0ffc69c 100644 --- a/src/vs/workbench/parts/output/browser/outputPanel.ts +++ b/src/vs/workbench/parts/output/browser/outputPanel.ts @@ -104,7 +104,7 @@ export class OutputPanel extends StringEditor { } public dispose(): void { - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); super.dispose(); } } diff --git a/src/vs/workbench/parts/output/common/outputEditorInput.ts b/src/vs/workbench/parts/output/common/outputEditorInput.ts index a19c1b1a712..4430df22996 100644 --- a/src/vs/workbench/parts/output/common/outputEditorInput.ts +++ b/src/vs/workbench/parts/output/common/outputEditorInput.ts @@ -142,7 +142,7 @@ export class OutputEditorInput extends StringEditorInput { public dispose(): void { this.appendOutputScheduler.dispose(); - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); super.dispose(); } diff --git a/src/vs/workbench/parts/search/common/searchModel.ts b/src/vs/workbench/parts/search/common/searchModel.ts index fb55da1dda0..62ece338c7b 100644 --- a/src/vs/workbench/parts/search/common/searchModel.ts +++ b/src/vs/workbench/parts/search/common/searchModel.ts @@ -314,8 +314,8 @@ export class SearchResult extends EventEmitter { } public dispose(): void { - this._disposables = lifecycle.disposeAll(this._disposables); - lifecycle.disposeAll(this.matches()); + this._disposables = lifecycle.dispose(this._disposables); + lifecycle.dispose(this.matches()); super.dispose(); } } \ No newline at end of file diff --git a/src/vs/workbench/parts/snippets/electron-browser/snippetsTracker.ts b/src/vs/workbench/parts/snippets/electron-browser/snippetsTracker.ts index e7a82855718..1fed7856760 100644 --- a/src/vs/workbench/parts/snippets/electron-browser/snippetsTracker.ts +++ b/src/vs/workbench/parts/snippets/electron-browser/snippetsTracker.ts @@ -90,7 +90,7 @@ export class SnippetsTracker implements workbenchExt.IWorkbenchContribution { public dispose(): void { this.unregisterListener(); - this.toDispose = lifecycle.disposeAll(this.toDispose); + this.toDispose = lifecycle.dispose(this.toDispose); } } diff --git a/src/vs/workbench/parts/tasks/electron-browser/task.contribution.ts b/src/vs/workbench/parts/tasks/electron-browser/task.contribution.ts index efe719d8afe..6664249d08b 100644 --- a/src/vs/workbench/parts/tasks/electron-browser/task.contribution.ts +++ b/src/vs/workbench/parts/tasks/electron-browser/task.contribution.ts @@ -17,7 +17,7 @@ import * as Objects from 'vs/base/common/objects'; import { IStringDictionary } from 'vs/base/common/collections'; import { Action } from 'vs/base/common/actions'; import * as Dom from 'vs/base/browser/dom'; -import { IDisposable, disposeAll } from 'vs/base/common/lifecycle'; +import { IDisposable, dispose } from 'vs/base/common/lifecycle'; import { EventEmitter, ListenerUnbind } from 'vs/base/common/eventEmitter'; import * as Builder from 'vs/base/browser/builder'; import * as Types from 'vs/base/common/types'; @@ -439,7 +439,7 @@ class StatusBarItem implements IStatusbarItem { return { dispose: () => { - callOnDispose = disposeAll(callOnDispose); + callOnDispose = dispose(callOnDispose); } }; }