提交 3b6e25b0 编写于 作者: M Martin Aeschlimann

[folding] tpromise-> promise

上级 ca0f4712
......@@ -187,7 +187,7 @@ export class Delayer<T> implements IDisposable {
this.task = null;
}
trigger(task: ITask<T | TPromise<T>>, delay: number = this.defaultDelay): TPromise<T> {
trigger(task: ITask<T | TPromise<T>>, delay: number = this.defaultDelay): Thenable<T> {
this.task = task;
this.cancelTimeout();
......
......@@ -10,7 +10,6 @@ import { escapeRegExpCharacters } from 'vs/base/common/strings';
import { RunOnceScheduler, Delayer, CancelablePromise, createCancelablePromise } from 'vs/base/common/async';
import { KeyCode, KeyMod, KeyChord } from 'vs/base/common/keyCodes';
import { IDisposable, dispose } from 'vs/base/common/lifecycle';
import { TPromise } from 'vs/base/common/winjs.base';
import { ScrollType, IEditorContribution } from 'vs/editor/common/editorCommon';
import { ITextModel } from 'vs/editor/common/model';
import { registerEditorAction, registerEditorContribution, ServicesAccessor, EditorAction, registerInstantiatedEditorAction } from 'vs/editor/browser/editorExtensions';
......@@ -71,7 +70,7 @@ export class FoldingController implements IEditorContribution {
private foldingStateMemento: FoldingStateMemento;
private foldingModelPromise: TPromise<FoldingModel>;
private foldingModelPromise: Thenable<FoldingModel>;
private updateScheduler: Delayer<FoldingModel>;
private globalToDispose: IDisposable[];
......@@ -262,7 +261,7 @@ export class FoldingController implements IEditorContribution {
return null;
}
let foldingRegionPromise = this.foldingRegionPromise = createCancelablePromise(token => this.getRangeProvider(this.foldingModel.textModel).compute(token));
return TPromise.wrap(foldingRegionPromise.then(foldingRanges => {
return foldingRegionPromise.then(foldingRanges => {
if (foldingRanges && foldingRegionPromise === this.foldingRegionPromise) { // new request or cancelled in the meantime?
// some cursors might have moved into hidden regions, make sure they are in expanded regions
let selections = this.editor.getSelections();
......@@ -270,7 +269,7 @@ export class FoldingController implements IEditorContribution {
this.foldingModel.update(foldingRanges, selectionLineNumbers);
}
return this.foldingModel;
}));
});
});
}
}
......@@ -418,7 +417,7 @@ abstract class FoldingAction<T> extends EditorAction {
abstract invoke(foldingController: FoldingController, foldingModel: FoldingModel, editor: ICodeEditor, args: T): void;
public runEditorCommand(accessor: ServicesAccessor, editor: ICodeEditor, args: T): void | TPromise<void> {
public runEditorCommand(accessor: ServicesAccessor, editor: ICodeEditor, args: T): void | Thenable<void> {
let foldingController = FoldingController.get(editor);
if (!foldingController) {
return;
......
......@@ -8,7 +8,6 @@ import { FoldingMarkers } from 'vs/editor/common/modes/languageConfiguration';
import { FoldingRegions, MAX_LINE_NUMBER } from 'vs/editor/contrib/folding/foldingRanges';
import { TextModel } from 'vs/editor/common/model/textModel';
import { RangeProvider } from './folding';
import { TPromise } from 'vs/base/common/winjs.base';
import { LanguageConfigurationRegistry } from 'vs/editor/common/modes/languageConfigurationRegistry';
import { CancellationToken } from 'vs/base/common/cancellation';
......@@ -31,7 +30,7 @@ export class IndentRangeProvider implements RangeProvider {
let foldingRules = LanguageConfigurationRegistry.getFoldingRules(this.editorModel.getLanguageIdentifier().id);
let offSide = foldingRules && foldingRules.offSide;
let markers = foldingRules && foldingRules.markers;
return TPromise.as(computeRanges(this.editorModel, offSide, markers));
return Promise.resolve(computeRanges(this.editorModel, offSide, markers));
}
}
......
......@@ -6,7 +6,6 @@
import { ITextModel, IModelDeltaDecoration, TrackedRangeStickiness } from 'vs/editor/common/model';
import { FoldingRegions, ILineRange } from 'vs/editor/contrib/folding/foldingRanges';
import { RangeProvider } from './folding';
import { TPromise } from 'vs/base/common/winjs.base';
import { CancellationToken } from 'vs/base/common/cancellation';
import { IFoldingRangeData, sanitizeRanges } from 'vs/editor/contrib/folding/syntaxRangeProvider';
......@@ -59,7 +58,7 @@ export class InitializingRangeProvider implements RangeProvider {
}
}
}
return TPromise.as(sanitizeRanges(foldingRangeData, Number.MAX_VALUE));
return Promise.resolve(sanitizeRanges(foldingRangeData, Number.MAX_VALUE));
}
}
......@@ -7,7 +7,6 @@ import { FoldingRangeProvider, FoldingRange, FoldingContext } from 'vs/editor/co
import { onUnexpectedExternalError } from 'vs/base/common/errors';
import { ITextModel } from 'vs/editor/common/model';
import { RangeProvider } from './folding';
import { TPromise } from 'vs/base/common/winjs.base';
import { MAX_LINE_NUMBER, FoldingRegions } from './foldingRanges';
import { CancellationToken } from 'vs/base/common/cancellation';
......@@ -64,7 +63,7 @@ function collectSyntaxRanges(providers: FoldingRangeProvider[], model: ITextMode
}
}, onUnexpectedExternalError);
});
return TPromise.join(promises).then(_ => {
return Promise.all(promises).then(_ => {
return rangeData;
});
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册