make changeLanguage return a TextDocument, #1800

This commit is contained in:
Johannes Rieken
2018-09-19 10:15:20 +02:00
parent 1da08a83c8
commit 363e6b696f
3 changed files with 14 additions and 7 deletions

View File

@@ -6,21 +6,28 @@
import { MainContext, MainThreadLanguagesShape, IMainContext } from './extHost.protocol';
import * as vscode from 'vscode';
import { ExtHostDocuments } from 'vs/workbench/api/node/extHostDocuments';
export class ExtHostLanguages {
private _proxy: MainThreadLanguagesShape;
private readonly _proxy: MainThreadLanguagesShape;
private readonly _documents: ExtHostDocuments;
constructor(
mainContext: IMainContext
mainContext: IMainContext,
documents: ExtHostDocuments
) {
this._proxy = mainContext.getProxy(MainContext.MainThreadLanguages);
this._documents = documents;
}
getLanguages(): Thenable<string[]> {
return this._proxy.$getLanguages();
}
changeLanguage(documentUri: vscode.Uri, languageId: string): Thenable<void> {
return this._proxy.$changeLanguage(documentUri, languageId);
changeLanguage(uri: vscode.Uri, languageId: string): Thenable<vscode.TextDocument> {
return this._proxy.$changeLanguage(uri, languageId).then(() => {
return this._documents.getDocumentData(uri).document;
});
}
}