src/vs/editor/contrib/suggest/browser/suggestWidget.ts/SuggestWidget/showSuggestions
class SuggestWidget:	showSuggestions(completionModel: CompletionModel, selectionIndex: number, isFrozen: boolean, isAuto: boolean): void {

		this._contentWidget.setPosition(this.editor.getPosition());
		this._loadingTimeout?.dispose();

		this._currentSuggestionDetails?.cancel();
		this._currentSuggestionDetails = undefined;

		if (this._completionModel !== completionModel) {
			this._completionModel = completionModel;
		}

		if (isFrozen && this._state !== State.Empty && this._state !== State.Hidden) {
			this._setState(State.Frozen);
			return;
		}

		const visibleCount = this._completionModel.items.length;
		const isEmpty = visibleCount === 0;
		this._ctxSuggestWidgetMultipleSuggestions.set(visibleCount > 1);

		if (isEmpty) {
			this._setState(isAuto ? State.Hidden : State.Empty);
			this._completionModel = undefined;
			return;
		}

		this._focusedItem = undefined;
		this._list.splice(0, this._list.length, this._completionModel.items);
		this._setState(isFrozen ? State.Frozen : State.Open);
		this._list.reveal(selectionIndex, 0);
		this._list.setFocus([selectionIndex]);

		this._layout(this.element.size);
		// Reset focus border
		this._details.widget.domNode.classList.remove('focused');
	}