mirror of
https://github.com/microsoft/vscode.git
synced 2026-05-14 12:11:43 +01:00
propose CompletionList#isDetailsResolved, #39441
This commit is contained in:
@@ -481,6 +481,7 @@ export interface CompletionItem {
|
||||
export interface CompletionList {
|
||||
suggestions: CompletionItem[];
|
||||
incomplete?: boolean;
|
||||
isDetailsResolved?: boolean;
|
||||
dispose?(): void;
|
||||
}
|
||||
|
||||
|
||||
@@ -47,6 +47,9 @@ export class CompletionItem {
|
||||
idx?: number;
|
||||
word?: string;
|
||||
|
||||
//
|
||||
readonly isDetailsResolved: boolean;
|
||||
|
||||
constructor(
|
||||
readonly position: IPosition,
|
||||
readonly completion: modes.CompletionItem,
|
||||
@@ -70,6 +73,8 @@ export class CompletionItem {
|
||||
this.editReplaceEnd = new Position(completion.range.replace.endLineNumber, completion.range.replace.endColumn);
|
||||
}
|
||||
|
||||
this.isDetailsResolved = container.isDetailsResolved || typeof provider.resolveCompletionItem === 'undefined';
|
||||
|
||||
// create the suggestion resolver
|
||||
const { resolveCompletionItem } = provider;
|
||||
if (typeof resolveCompletionItem !== 'function') {
|
||||
|
||||
Vendored
+1
@@ -4854,6 +4854,7 @@ declare namespace monaco.languages {
|
||||
export interface CompletionList {
|
||||
suggestions: CompletionItem[];
|
||||
incomplete?: boolean;
|
||||
isDetailsResolved?: boolean;
|
||||
dispose?(): void;
|
||||
}
|
||||
|
||||
|
||||
Vendored
+11
@@ -1504,4 +1504,15 @@ declare module 'vscode' {
|
||||
export const onDidChangeActiveColorTheme: Event<ColorTheme>;
|
||||
}
|
||||
|
||||
//#endregion
|
||||
|
||||
|
||||
//#region https://github.com/microsoft/vscode/issues/39441
|
||||
|
||||
export interface CompletionList {
|
||||
isDetailsResolved?: boolean;
|
||||
}
|
||||
|
||||
//#endregion
|
||||
|
||||
}
|
||||
|
||||
@@ -367,6 +367,7 @@ export class MainThreadLanguageFeatures implements MainThreadLanguageFeaturesSha
|
||||
return {
|
||||
suggestions: result.b.map(d => MainThreadLanguageFeatures._inflateSuggestDto(result.a, d)),
|
||||
incomplete: result.c,
|
||||
isDetailsResolved: result.d,
|
||||
dispose: () => typeof result.x === 'number' && this._proxy.$releaseCompletionItems(handle, result.x)
|
||||
};
|
||||
});
|
||||
|
||||
@@ -1012,6 +1012,7 @@ export interface ISuggestResultDto {
|
||||
a: { insert: IRange, replace: IRange; };
|
||||
b: ISuggestDataDto[];
|
||||
c?: boolean;
|
||||
d?: boolean;
|
||||
}
|
||||
|
||||
export interface ISignatureHelpDto {
|
||||
|
||||
@@ -787,7 +787,8 @@ class SuggestAdapter {
|
||||
x: pid,
|
||||
b: [],
|
||||
a: { replace: typeConvert.Range.from(replaceRange), insert: typeConvert.Range.from(insertRange) },
|
||||
c: list.isIncomplete || undefined
|
||||
c: list.isIncomplete || undefined,
|
||||
d: list.isDetailsResolved || undefined
|
||||
};
|
||||
|
||||
for (let i = 0; i < list.items.length; i++) {
|
||||
|
||||
@@ -1395,7 +1395,7 @@ export class CompletionItem implements vscode.CompletionItem {
|
||||
export class CompletionList {
|
||||
|
||||
isIncomplete?: boolean;
|
||||
|
||||
isDetailsResolved?: boolean;
|
||||
items: vscode.CompletionItem[];
|
||||
|
||||
constructor(items: vscode.CompletionItem[] = [], isIncomplete: boolean = false) {
|
||||
|
||||
Reference in New Issue
Block a user