Adding insertSnippet to TextEditor extension API.

This commit is contained in:
Joel Day
2016-12-16 00:50:35 -08:00
parent 2d1f793ff7
commit 38a3a1a239
6 changed files with 52 additions and 2 deletions

View File

@@ -13,7 +13,7 @@ import { TPromise } from 'vs/base/common/winjs.base';
import { IThreadService } from 'vs/workbench/services/thread/common/threadService';
import { ExtHostDocuments, ExtHostDocumentData } from 'vs/workbench/api/node/extHostDocuments';
import { Selection, Range, Position, EndOfLine, TextEditorRevealType, TextEditorSelectionChangeKind, TextEditorLineNumbersStyle } from './extHostTypes';
import { ISingleEditOperation, TextEditorCursorStyle } from 'vs/editor/common/editorCommon';
import { IPosition, IRange, ISingleEditOperation, TextEditorCursorStyle } from 'vs/editor/common/editorCommon';
import { IResolvedTextEditorConfiguration, ISelectionChangeEvent, ITextEditorConfigurationUpdate } from 'vs/workbench/api/node/mainThreadEditorsTracker';
import * as TypeConverters from './extHostTypeConverters';
import { MainContext, MainThreadEditorsShape, ExtHostEditorsShape, ITextEditorAddData, ITextEditorPositionData } from './extHost.protocol';
@@ -620,6 +620,13 @@ class ExtHostTextEditor implements vscode.TextEditor {
});
}
insertSnippet(template: string, posOrRange: Position | Range) {
const convertedPosOrRange = posOrRange instanceof Position ?
TypeConverters.fromPosition(posOrRange) : TypeConverters.fromRange(posOrRange);
return this._proxy.$tryInsertSnippet(this._id, template, convertedPosOrRange);
}
// ---- util
private _runOnProxy(callback: () => TPromise<any>, silent: boolean): TPromise<ExtHostTextEditor> {