diff --git a/src/vs/workbench/api/node/extHost.protocol.ts b/src/vs/workbench/api/node/extHost.protocol.ts index b9494a65b71..a0b316029b2 100644 --- a/src/vs/workbench/api/node/extHost.protocol.ts +++ b/src/vs/workbench/api/node/extHost.protocol.ts @@ -568,31 +568,31 @@ export type IWorkspaceSymbol = IdObject & modes.SymbolInformation; export interface IWorkspaceSymbols extends IdObject { symbols: IWorkspaceSymbol[]; } export interface ExtHostLanguageFeaturesShape { - $provideDocumentSymbols(handle: number, resource: URI): TPromise; - $provideCodeLenses(handle: number, resource: URI): TPromise; - $resolveCodeLens(handle: number, resource: URI, symbol: modes.ICodeLensSymbol): TPromise; - $provideDefinition(handle: number, resource: URI, position: IPosition): TPromise; - $provideImplementation(handle: number, resource: URI, position: IPosition): TPromise; - $provideTypeDefinition(handle: number, resource: URI, position: IPosition): TPromise; - $provideHover(handle: number, resource: URI, position: IPosition): TPromise; - $provideDocumentHighlights(handle: number, resource: URI, position: IPosition): TPromise; - $provideReferences(handle: number, resource: URI, position: IPosition, context: modes.ReferenceContext): TPromise; - $provideCodeActions(handle: number, resource: URI, range: IRange): TPromise; - $provideDocumentFormattingEdits(handle: number, resource: URI, options: modes.FormattingOptions): TPromise; - $provideDocumentRangeFormattingEdits(handle: number, resource: URI, range: IRange, options: modes.FormattingOptions): TPromise; - $provideOnTypeFormattingEdits(handle: number, resource: URI, position: IPosition, ch: string, options: modes.FormattingOptions): TPromise; + $provideDocumentSymbols(handle: number, resource: UriComponents): TPromise; + $provideCodeLenses(handle: number, resource: UriComponents): TPromise; + $resolveCodeLens(handle: number, resource: UriComponents, symbol: modes.ICodeLensSymbol): TPromise; + $provideDefinition(handle: number, resource: UriComponents, position: IPosition): TPromise; + $provideImplementation(handle: number, resource: UriComponents, position: IPosition): TPromise; + $provideTypeDefinition(handle: number, resource: UriComponents, position: IPosition): TPromise; + $provideHover(handle: number, resource: UriComponents, position: IPosition): TPromise; + $provideDocumentHighlights(handle: number, resource: UriComponents, position: IPosition): TPromise; + $provideReferences(handle: number, resource: UriComponents, position: IPosition, context: modes.ReferenceContext): TPromise; + $provideCodeActions(handle: number, resource: UriComponents, range: IRange): TPromise; + $provideDocumentFormattingEdits(handle: number, resource: UriComponents, options: modes.FormattingOptions): TPromise; + $provideDocumentRangeFormattingEdits(handle: number, resource: UriComponents, range: IRange, options: modes.FormattingOptions): TPromise; + $provideOnTypeFormattingEdits(handle: number, resource: UriComponents, position: IPosition, ch: string, options: modes.FormattingOptions): TPromise; $provideWorkspaceSymbols(handle: number, search: string): TPromise; $resolveWorkspaceSymbol(handle: number, symbol: modes.SymbolInformation): TPromise; $releaseWorkspaceSymbols(handle: number, id: number): void; - $provideRenameEdits(handle: number, resource: URI, position: IPosition, newName: string): TPromise; - $provideCompletionItems(handle: number, resource: URI, position: IPosition, context: modes.SuggestContext): TPromise; - $resolveCompletionItem(handle: number, resource: URI, position: IPosition, suggestion: modes.ISuggestion): TPromise; + $provideRenameEdits(handle: number, resource: UriComponents, position: IPosition, newName: string): TPromise; + $provideCompletionItems(handle: number, resource: UriComponents, position: IPosition, context: modes.SuggestContext): TPromise; + $resolveCompletionItem(handle: number, resource: UriComponents, position: IPosition, suggestion: modes.ISuggestion): TPromise; $releaseCompletionItems(handle: number, id: number): void; - $provideSignatureHelp(handle: number, resource: URI, position: IPosition): TPromise; - $provideDocumentLinks(handle: number, resource: URI): TPromise; + $provideSignatureHelp(handle: number, resource: UriComponents, position: IPosition): TPromise; + $provideDocumentLinks(handle: number, resource: UriComponents): TPromise; $resolveDocumentLink(handle: number, link: modes.ILink): TPromise; - $provideDocumentColors(handle: number, resource: URI): TPromise; - $provideColorPresentations(handle: number, resource: URI, colorInfo: IRawColorInfo): TPromise; + $provideDocumentColors(handle: number, resource: UriComponents): TPromise; + $provideColorPresentations(handle: number, resource: UriComponents, colorInfo: IRawColorInfo): TPromise; } export interface ExtHostQuickOpenShape { diff --git a/src/vs/workbench/api/node/extHostLanguageFeatures.ts b/src/vs/workbench/api/node/extHostLanguageFeatures.ts index 65dc86d171d..805b3284833 100644 --- a/src/vs/workbench/api/node/extHostLanguageFeatures.ts +++ b/src/vs/workbench/api/node/extHostLanguageFeatures.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; -import URI from 'vs/base/common/uri'; +import URI, { UriComponents } from 'vs/base/common/uri'; import { TPromise } from 'vs/base/common/winjs.base'; import { mixin } from 'vs/base/common/objects'; import * as vscode from 'vscode'; @@ -835,8 +835,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideDocumentSymbols(handle: number, resource: URI): TPromise { - return this._withAdapter(handle, OutlineAdapter, adapter => adapter.provideDocumentSymbols(resource)); + $provideDocumentSymbols(handle: number, resource: UriComponents): TPromise { + return this._withAdapter(handle, OutlineAdapter, adapter => adapter.provideDocumentSymbols(URI.revive(resource))); } // --- code lens @@ -857,12 +857,12 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return result; } - $provideCodeLenses(handle: number, resource: URI): TPromise { - return this._withAdapter(handle, CodeLensAdapter, adapter => adapter.provideCodeLenses(resource)); + $provideCodeLenses(handle: number, resource: UriComponents): TPromise { + return this._withAdapter(handle, CodeLensAdapter, adapter => adapter.provideCodeLenses(URI.revive(resource))); } - $resolveCodeLens(handle: number, resource: URI, symbol: modes.ICodeLensSymbol): TPromise { - return this._withAdapter(handle, CodeLensAdapter, adapter => adapter.resolveCodeLens(resource, symbol)); + $resolveCodeLens(handle: number, resource: UriComponents, symbol: modes.ICodeLensSymbol): TPromise { + return this._withAdapter(handle, CodeLensAdapter, adapter => adapter.resolveCodeLens(URI.revive(resource), symbol)); } // --- declaration @@ -874,8 +874,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideDefinition(handle: number, resource: URI, position: IPosition): TPromise { - return this._withAdapter(handle, DefinitionAdapter, adapter => adapter.provideDefinition(resource, position)); + $provideDefinition(handle: number, resource: UriComponents, position: IPosition): TPromise { + return this._withAdapter(handle, DefinitionAdapter, adapter => adapter.provideDefinition(URI.revive(resource), position)); } registerImplementationProvider(selector: vscode.DocumentSelector, provider: vscode.ImplementationProvider): vscode.Disposable { @@ -885,8 +885,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideImplementation(handle: number, resource: URI, position: IPosition): TPromise { - return this._withAdapter(handle, ImplementationAdapter, adapter => adapter.provideImplementation(resource, position)); + $provideImplementation(handle: number, resource: UriComponents, position: IPosition): TPromise { + return this._withAdapter(handle, ImplementationAdapter, adapter => adapter.provideImplementation(URI.revive(resource), position)); } registerTypeDefinitionProvider(selector: vscode.DocumentSelector, provider: vscode.TypeDefinitionProvider): vscode.Disposable { @@ -896,8 +896,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideTypeDefinition(handle: number, resource: URI, position: IPosition): TPromise { - return this._withAdapter(handle, TypeDefinitionAdapter, adapter => adapter.provideTypeDefinition(resource, position)); + $provideTypeDefinition(handle: number, resource: UriComponents, position: IPosition): TPromise { + return this._withAdapter(handle, TypeDefinitionAdapter, adapter => adapter.provideTypeDefinition(URI.revive(resource), position)); } // --- extra info @@ -909,8 +909,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideHover(handle: number, resource: URI, position: IPosition): TPromise { - return this._withAdapter(handle, HoverAdapter, adpater => adpater.provideHover(resource, position)); + $provideHover(handle: number, resource: UriComponents, position: IPosition): TPromise { + return this._withAdapter(handle, HoverAdapter, adpater => adpater.provideHover(URI.revive(resource), position)); } // --- occurrences @@ -922,8 +922,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideDocumentHighlights(handle: number, resource: URI, position: IPosition): TPromise { - return this._withAdapter(handle, DocumentHighlightAdapter, adapter => adapter.provideDocumentHighlights(resource, position)); + $provideDocumentHighlights(handle: number, resource: UriComponents, position: IPosition): TPromise { + return this._withAdapter(handle, DocumentHighlightAdapter, adapter => adapter.provideDocumentHighlights(URI.revive(resource), position)); } // --- references @@ -935,8 +935,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideReferences(handle: number, resource: URI, position: IPosition, context: modes.ReferenceContext): TPromise { - return this._withAdapter(handle, ReferenceAdapter, adapter => adapter.provideReferences(resource, position, context)); + $provideReferences(handle: number, resource: UriComponents, position: IPosition, context: modes.ReferenceContext): TPromise { + return this._withAdapter(handle, ReferenceAdapter, adapter => adapter.provideReferences(URI.revive(resource), position, context)); } // --- quick fix @@ -948,8 +948,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideCodeActions(handle: number, resource: URI, range: IRange): TPromise { - return this._withAdapter(handle, CodeActionAdapter, adapter => adapter.provideCodeActions(resource, range)); + $provideCodeActions(handle: number, resource: UriComponents, range: IRange): TPromise { + return this._withAdapter(handle, CodeActionAdapter, adapter => adapter.provideCodeActions(URI.revive(resource), range)); } // --- formatting @@ -961,8 +961,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideDocumentFormattingEdits(handle: number, resource: URI, options: modes.FormattingOptions): TPromise { - return this._withAdapter(handle, DocumentFormattingAdapter, adapter => adapter.provideDocumentFormattingEdits(resource, options)); + $provideDocumentFormattingEdits(handle: number, resource: UriComponents, options: modes.FormattingOptions): TPromise { + return this._withAdapter(handle, DocumentFormattingAdapter, adapter => adapter.provideDocumentFormattingEdits(URI.revive(resource), options)); } registerDocumentRangeFormattingEditProvider(selector: vscode.DocumentSelector, provider: vscode.DocumentRangeFormattingEditProvider): vscode.Disposable { @@ -972,8 +972,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideDocumentRangeFormattingEdits(handle: number, resource: URI, range: IRange, options: modes.FormattingOptions): TPromise { - return this._withAdapter(handle, RangeFormattingAdapter, adapter => adapter.provideDocumentRangeFormattingEdits(resource, range, options)); + $provideDocumentRangeFormattingEdits(handle: number, resource: UriComponents, range: IRange, options: modes.FormattingOptions): TPromise { + return this._withAdapter(handle, RangeFormattingAdapter, adapter => adapter.provideDocumentRangeFormattingEdits(URI.revive(resource), range, options)); } registerOnTypeFormattingEditProvider(selector: vscode.DocumentSelector, provider: vscode.OnTypeFormattingEditProvider, triggerCharacters: string[]): vscode.Disposable { @@ -983,8 +983,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideOnTypeFormattingEdits(handle: number, resource: URI, position: IPosition, ch: string, options: modes.FormattingOptions): TPromise { - return this._withAdapter(handle, OnTypeFormattingAdapter, adapter => adapter.provideOnTypeFormattingEdits(resource, position, ch, options)); + $provideOnTypeFormattingEdits(handle: number, resource: UriComponents, position: IPosition, ch: string, options: modes.FormattingOptions): TPromise { + return this._withAdapter(handle, OnTypeFormattingAdapter, adapter => adapter.provideOnTypeFormattingEdits(URI.revive(resource), position, ch, options)); } // --- navigate types @@ -1017,8 +1017,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideRenameEdits(handle: number, resource: URI, position: IPosition, newName: string): TPromise { - return this._withAdapter(handle, RenameAdapter, adapter => adapter.provideRenameEdits(resource, position, newName)); + $provideRenameEdits(handle: number, resource: UriComponents, position: IPosition, newName: string): TPromise { + return this._withAdapter(handle, RenameAdapter, adapter => adapter.provideRenameEdits(URI.revive(resource), position, newName)); } // --- suggestion @@ -1030,12 +1030,12 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideCompletionItems(handle: number, resource: URI, position: IPosition, context: modes.SuggestContext): TPromise { - return this._withAdapter(handle, SuggestAdapter, adapter => adapter.provideCompletionItems(resource, position, context)); + $provideCompletionItems(handle: number, resource: UriComponents, position: IPosition, context: modes.SuggestContext): TPromise { + return this._withAdapter(handle, SuggestAdapter, adapter => adapter.provideCompletionItems(URI.revive(resource), position, context)); } - $resolveCompletionItem(handle: number, resource: URI, position: IPosition, suggestion: modes.ISuggestion): TPromise { - return this._withAdapter(handle, SuggestAdapter, adapter => adapter.resolveCompletionItem(resource, position, suggestion)); + $resolveCompletionItem(handle: number, resource: UriComponents, position: IPosition, suggestion: modes.ISuggestion): TPromise { + return this._withAdapter(handle, SuggestAdapter, adapter => adapter.resolveCompletionItem(URI.revive(resource), position, suggestion)); } $releaseCompletionItems(handle: number, id: number): void { @@ -1051,8 +1051,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideSignatureHelp(handle: number, resource: URI, position: IPosition): TPromise { - return this._withAdapter(handle, SignatureHelpAdapter, adapter => adapter.provideSignatureHelp(resource, position)); + $provideSignatureHelp(handle: number, resource: UriComponents, position: IPosition): TPromise { + return this._withAdapter(handle, SignatureHelpAdapter, adapter => adapter.provideSignatureHelp(URI.revive(resource), position)); } // --- links @@ -1064,8 +1064,8 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideDocumentLinks(handle: number, resource: URI): TPromise { - return this._withAdapter(handle, LinkProviderAdapter, adapter => adapter.provideLinks(resource)); + $provideDocumentLinks(handle: number, resource: UriComponents): TPromise { + return this._withAdapter(handle, LinkProviderAdapter, adapter => adapter.provideLinks(URI.revive(resource))); } $resolveDocumentLink(handle: number, link: modes.ILink): TPromise { @@ -1079,12 +1079,12 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape { return this._createDisposable(handle); } - $provideDocumentColors(handle: number, resource: URI): TPromise { - return this._withAdapter(handle, ColorProviderAdapter, adapter => adapter.provideColors(resource)); + $provideDocumentColors(handle: number, resource: UriComponents): TPromise { + return this._withAdapter(handle, ColorProviderAdapter, adapter => adapter.provideColors(URI.revive(resource))); } - $provideColorPresentations(handle: number, resource: URI, colorInfo: IRawColorInfo): TPromise { - return this._withAdapter(handle, ColorProviderAdapter, adapter => adapter.provideColorPresentations(resource, colorInfo)); + $provideColorPresentations(handle: number, resource: UriComponents, colorInfo: IRawColorInfo): TPromise { + return this._withAdapter(handle, ColorProviderAdapter, adapter => adapter.provideColorPresentations(URI.revive(resource), colorInfo)); } // --- configuration