Adding completion item kind enum

This commit is contained in:
Matt Bierner
2017-09-20 19:13:03 -07:00
parent b34379e8f7
commit 2f34618b87
11 changed files with 78 additions and 13 deletions

View File

@@ -563,6 +563,7 @@ export function createApiFactory(
CompletionItem: extHostTypes.CompletionItem,
CompletionItemKind: extHostTypes.CompletionItemKind,
CompletionList: extHostTypes.CompletionList,
CompletionTriggerKind: extHostTypes.CompletionTriggerKind,
Diagnostic: extHostTypes.Diagnostic,
DiagnosticSeverity: extHostTypes.DiagnosticSeverity,
Disposable: extHostTypes.Disposable,

View File

@@ -492,7 +492,7 @@ class SuggestAdapter {
const pos = TypeConverters.toPosition(position);
return asWinJsPromise<vscode.CompletionItem[] | vscode.CompletionList>(token => {
return this._provider.provideCompletionItems(doc, pos, token, context);
return this._provider.provideCompletionItems(doc, pos, token, TypeConverters.CompletionContext.from(context));
}).then(value => {
const _id = this._idPool++;

View File

@@ -307,6 +307,28 @@ export function toDocumentHighlight(occurrence: modes.DocumentHighlight): types.
return new types.DocumentHighlight(toRange(occurrence.range), occurrence.kind);
}
export namespace CompletionTriggerKind {
export function from(kind: modes.SuggestTriggerKind) {
switch (kind) {
case modes.SuggestTriggerKind.TriggerCharacter:
return types.CompletionTriggerKind.TriggerCharacter;
case modes.SuggestTriggerKind.Invoke:
default:
return types.CompletionTriggerKind.Invoke;
}
}
}
export namespace CompletionContext {
export function from(context: modes.SuggestContext): types.CompletionContext {
return {
triggerKind: CompletionTriggerKind.from(context.triggerKind),
triggerCharacter: context.triggerCharacter
};
}
}
export const CompletionItemKind = {
from(kind: types.CompletionItemKind): modes.SuggestionType {

View File

@@ -879,6 +879,16 @@ export class SignatureHelp {
}
}
export enum CompletionTriggerKind {
Invoke = 0,
TriggerCharacter = 1
}
export interface CompletionContext {
triggerKind: CompletionTriggerKind;
triggerCharacter: string;
}
export enum CompletionItemKind {
Text = 0,
Method = 1,