diff --git a/src/vs/editor/common/modes.ts b/src/vs/editor/common/modes.ts index 7c9121dcb5bc74c9e021b613190c293527289318..aef0f6a68bb02dbcbd39df85f6213e80c9ea7357 100644 --- a/src/vs/editor/common/modes.ts +++ b/src/vs/editor/common/modes.ts @@ -490,9 +490,9 @@ export interface SignatureHelp { * The signature help provider interface defines the contract between extensions and * the [parameter hints](https://code.visualstudio.com/docs/editor/editingevolved#_parameter-hints)-feature. */ -export interface IParameterHintsSupport { +export interface SignatureHelpProvider { - parameterHintsTriggerCharacters: string[]; + signatureHelpTriggerCharacters: string[]; /** * Provide help for the signature at the given position and document. @@ -822,7 +822,7 @@ export const RenameRegistry = new LanguageFeatureRegistry(null); export const SuggestRegistry = new LanguageFeatureRegistry('suggestSupport'); -export const ParameterHintsRegistry = new LanguageFeatureRegistry(null); +export const SignatureHelpProviderRegistry = new LanguageFeatureRegistry(null); export const HoverProviderRegistry = new LanguageFeatureRegistry(null); diff --git a/src/vs/editor/contrib/parameterHints/browser/parameterHints.ts b/src/vs/editor/contrib/parameterHints/browser/parameterHints.ts index 1d9ecad5ff68c5ed0f657b379f5ac0057b90bfe7..c7c8107113654eb13faa705ea3b739ec5e1d5e48 100644 --- a/src/vs/editor/contrib/parameterHints/browser/parameterHints.ts +++ b/src/vs/editor/contrib/parameterHints/browser/parameterHints.ts @@ -13,7 +13,7 @@ import {ICommonCodeEditor, IEditorActionDescriptorData, IEditorContribution} fro import {CommonEditorRegistry, ContextKey, EditorActionDescriptor} from 'vs/editor/common/editorCommonExtensions'; import {ICodeEditor} from 'vs/editor/browser/editorBrowser'; import {EditorBrowserRegistry} from 'vs/editor/browser/editorBrowserExtensions'; -import {ParameterHintsRegistry} from 'vs/editor/common/modes'; +import {SignatureHelpProviderRegistry} from 'vs/editor/common/modes'; import {ParameterHintsModel} from './parameterHintsModel'; import {ParameterHintsWidget} from './parameterHintsWidget'; @@ -78,7 +78,7 @@ export class TriggerParameterHintsAction extends EditorAction { } public isSupported(): boolean { - return ParameterHintsRegistry.has(this.editor.getModel()) && super.isSupported(); + return SignatureHelpProviderRegistry.has(this.editor.getModel()) && super.isSupported(); } public run():TPromise { diff --git a/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.ts b/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.ts index 3cfb059137897793682ead789fa8eb2a0bacf186..ed21df81fc03b1f548aaa35b236ad39640368544 100644 --- a/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.ts +++ b/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.ts @@ -9,7 +9,7 @@ import {onUnexpectedError} from 'vs/base/common/errors'; import Event, {Emitter} from 'vs/base/common/event'; import {IDisposable, dispose, Disposable} from 'vs/base/common/lifecycle'; import {EventType, ICommonCodeEditor, ICursorSelectionChangedEvent} from 'vs/editor/common/editorCommon'; -import {ParameterHintsRegistry, SignatureHelp} from 'vs/editor/common/modes'; +import {SignatureHelpProviderRegistry, SignatureHelp} from 'vs/editor/common/modes'; import {provideSignatureHelp} from '../common/parameterHints'; export interface IHintEvent { @@ -45,7 +45,7 @@ export class ParameterHintsModel extends Disposable { this._register(this.editor.addListener2(EventType.ModelChanged, e => this.onModelChanged())); this._register(this.editor.addListener2(EventType.ModelModeChanged, _ => this.onModelChanged())); this._register(this.editor.addListener2(EventType.CursorSelectionChanged, e => this.onCursorChange(e))); - this._register(ParameterHintsRegistry.onDidChange(this.onModelChanged, this)); + this._register(SignatureHelpProviderRegistry.onDidChange(this.onModelChanged, this)); this.onModelChanged(); } @@ -60,7 +60,7 @@ export class ParameterHintsModel extends Disposable { } public trigger(delay = ParameterHintsModel.DELAY): void { - if (!ParameterHintsRegistry.has(this.editor.getModel())) { + if (!SignatureHelpProviderRegistry.has(this.editor.getModel())) { return; } @@ -101,12 +101,12 @@ export class ParameterHintsModel extends Disposable { return; } - let support = ParameterHintsRegistry.ordered(model)[0]; + let support = SignatureHelpProviderRegistry.ordered(model)[0]; if (!support) { return; } - this.triggerCharactersListeners = support.parameterHintsTriggerCharacters.map((ch) => { + this.triggerCharactersListeners = support.signatureHelpTriggerCharacters.map((ch) => { let listener = this.editor.addTypingListener(ch, () => { this.trigger(); }); diff --git a/src/vs/editor/contrib/parameterHints/common/parameterHints.ts b/src/vs/editor/contrib/parameterHints/common/parameterHints.ts index 0676d7700a3d4b727fcbb55ff66d5c136632a743..065a2f2842d24f87d68feb10ce6d75237c3b2600 100644 --- a/src/vs/editor/contrib/parameterHints/common/parameterHints.ts +++ b/src/vs/editor/contrib/parameterHints/common/parameterHints.ts @@ -8,13 +8,13 @@ import {TPromise} from 'vs/base/common/winjs.base'; import {IModel, IEditorPosition} from 'vs/editor/common/editorCommon'; import {CommonEditorRegistry} from 'vs/editor/common/editorCommonExtensions'; -import {SignatureHelp, ParameterHintsRegistry} from 'vs/editor/common/modes'; +import {SignatureHelp, SignatureHelpProviderRegistry} from 'vs/editor/common/modes'; import {CancellationToken} from 'vs/base/common/cancellation'; import {toThenable} from 'vs/base/common/async'; export function provideSignatureHelp(model:IModel, position:IEditorPosition, cancellationToken = CancellationToken.None): Thenable { - let support = ParameterHintsRegistry.ordered(model)[0]; + let support = SignatureHelpProviderRegistry.ordered(model)[0]; if (!support) { return TPromise.as(undefined); } diff --git a/src/vs/languages/typescript/common/languageFeatures.ts b/src/vs/languages/typescript/common/languageFeatures.ts index 2f06aee385f564df58a8cd06d21f74db4c68a199..dd8b20b0879f11d0280eb64cc6737d4cb5386095 100644 --- a/src/vs/languages/typescript/common/languageFeatures.ts +++ b/src/vs/languages/typescript/common/languageFeatures.ts @@ -22,7 +22,7 @@ export function register(modelService: IModelService, markerService: IMarkerServ const disposables: lifecycle.IDisposable[] = []; disposables.push(modes.SuggestRegistry.register(selector, new SuggestAdapter(modelService, worker))); - disposables.push(modes.ParameterHintsRegistry.register(selector, new ParameterHintsAdapter(modelService, worker))); + disposables.push(modes.SignatureHelpProviderRegistry.register(selector, new SignatureHelpAdapter(modelService, worker))); disposables.push(modes.HoverProviderRegistry.register(selector, new QuickInfoAdapter(modelService, worker))); disposables.push(modes.OccurrencesRegistry.register(selector, new OccurrencesAdapter(modelService, worker))); disposables.push(modes.DeclarationRegistry.register(selector, new DeclarationAdapter(modelService, worker))); @@ -242,9 +242,9 @@ class SuggestAdapter extends Adapter implements modes.ISuggestSupport { } } -class ParameterHintsAdapter extends Adapter implements modes.IParameterHintsSupport { +class SignatureHelpAdapter extends Adapter implements modes.SignatureHelpProvider { - public parameterHintsTriggerCharacters = ['(', ',']; + public signatureHelpTriggerCharacters = ['(', ',']; provideSignatureHelp(model: editor.IModel, position: editor.IEditorPosition, token: CancellationToken): TPromise { let resource = model.getAssociatedResource(); diff --git a/src/vs/workbench/api/node/extHostLanguageFeatures.ts b/src/vs/workbench/api/node/extHostLanguageFeatures.ts index fa72740c32c2ab0099e9cb577772c92a71467f31..948d643460bb00e97fe2ad0a156079e31cb7f3f9 100644 --- a/src/vs/workbench/api/node/extHostLanguageFeatures.ts +++ b/src/vs/workbench/api/node/extHostLanguageFeatures.ts @@ -586,7 +586,7 @@ class SuggestAdapter implements modes.ISuggestSupport { } } -class ParameterHintsAdapter { +class SignatureHelpAdapter { private _documents: ExtHostModelService; private _provider: vscode.SignatureHelpProvider; @@ -612,7 +612,7 @@ class ParameterHintsAdapter { type Adapter = OutlineAdapter | CodeLensAdapter | DeclarationAdapter | HoverProviderAdapter | OccurrencesAdapter | ReferenceAdapter | QuickFixAdapter | DocumentFormattingAdapter | RangeFormattingAdapter | OnTypeFormattingAdapter | NavigateTypeAdapter | RenameAdapter - | SuggestAdapter | ParameterHintsAdapter; + | SuggestAdapter | SignatureHelpAdapter; @Remotable.ExtHostContext('ExtHostLanguageFeatures') export class ExtHostLanguageFeatures { @@ -832,13 +832,13 @@ export class ExtHostLanguageFeatures { registerSignatureHelpProvider(selector: vscode.DocumentSelector, provider: vscode.SignatureHelpProvider, triggerCharacters: string[]): vscode.Disposable { const handle = this._nextHandle(); - this._adapter[handle] = new ParameterHintsAdapter(this._documents, provider); - this._proxy.$registerParameterHintsSupport(handle, selector, triggerCharacters); + this._adapter[handle] = new SignatureHelpAdapter(this._documents, provider); + this._proxy.$registerSignatureHelpProvider(handle, selector, triggerCharacters); return this._createDisposable(handle); } $provideSignatureHelp(handle: number, resource: URI, position: IPosition): TPromise { - return this._withAdapter(handle, ParameterHintsAdapter, adapter => adapter.provideSignatureHelp(resource, position)); + return this._withAdapter(handle, SignatureHelpAdapter, adapter => adapter.provideSignatureHelp(resource, position)); } } @@ -1026,10 +1026,10 @@ export class MainThreadLanguageFeatures { // --- parameter hints - $registerParameterHintsSupport(handle: number, selector: vscode.DocumentSelector, triggerCharacter: string[]): TPromise { - this._registrations[handle] = modes.ParameterHintsRegistry.register(selector, { + $registerSignatureHelpProvider(handle: number, selector: vscode.DocumentSelector, triggerCharacter: string[]): TPromise { + this._registrations[handle] = modes.SignatureHelpProviderRegistry.register(selector, { - parameterHintsTriggerCharacters: triggerCharacter, + signatureHelpTriggerCharacters: triggerCharacter, provideSignatureHelp: (model:IModel, position:IEditorPosition, cancellationToken:CancellationToken): Thenable => { return wireCancellationToken(cancellationToken, this._proxy.$provideSignatureHelp(handle, model.getAssociatedResource(), position));