mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-03-21 20:30:29 -04:00
Merge from master
This commit is contained in:
@@ -3,12 +3,12 @@
|
||||
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
import { first2 } from 'vs/base/common/async';
|
||||
import { first } from 'vs/base/common/async';
|
||||
import { onUnexpectedExternalError } from 'vs/base/common/errors';
|
||||
import { registerDefaultLanguageCommand } from 'vs/editor/browser/editorExtensions';
|
||||
import { Position } from 'vs/editor/common/core/position';
|
||||
import { ITextModel } from 'vs/editor/common/model';
|
||||
import { SignatureHelp, SignatureHelpProviderRegistry } from 'vs/editor/common/modes';
|
||||
import * as modes from 'vs/editor/common/modes';
|
||||
import { RawContextKey } from 'vs/platform/contextkey/common/contextkey';
|
||||
import { CancellationToken } from 'vs/base/common/cancellation';
|
||||
|
||||
@@ -17,13 +17,17 @@ export const Context = {
|
||||
MultipleSignatures: new RawContextKey<boolean>('parameterHintsMultipleSignatures', false),
|
||||
};
|
||||
|
||||
export function provideSignatureHelp(model: ITextModel, position: Position, token: CancellationToken): Promise<SignatureHelp> {
|
||||
export function provideSignatureHelp(model: ITextModel, position: Position, context: modes.SignatureHelpContext, token: CancellationToken): Promise<modes.SignatureHelp | null | undefined> {
|
||||
|
||||
const supports = SignatureHelpProviderRegistry.ordered(model);
|
||||
const supports = modes.SignatureHelpProviderRegistry.ordered(model);
|
||||
|
||||
return first2(supports.map(support => () => {
|
||||
return Promise.resolve(support.provideSignatureHelp(model, position, token)).catch(onUnexpectedExternalError);
|
||||
return first(supports.map(support => () => {
|
||||
return Promise.resolve(support.provideSignatureHelp(model, position, token, context)).catch(onUnexpectedExternalError);
|
||||
}));
|
||||
}
|
||||
|
||||
registerDefaultLanguageCommand('_executeSignatureHelpProvider', (model, position) => provideSignatureHelp(model, position, CancellationToken.None));
|
||||
registerDefaultLanguageCommand('_executeSignatureHelpProvider', (model, position) =>
|
||||
provideSignatureHelp(model, position, {
|
||||
triggerKind: modes.SignatureHelpTriggerKind.Invoke,
|
||||
isRetrigger: false
|
||||
}, CancellationToken.None));
|
||||
|
||||
Reference in New Issue
Block a user