void (@NotNull IntentionHintComponent component, @Nullable RelativePoint positionHint) { if (myDisposed || myEditor.isDisposed() || (myListPopup != null && myListPopup.isDisposed()) || myPopupShown) return; if (myListPopup == null) { assert myHint == null; myHint = component; recreateMyPopup(this, new IntentionListStep(this, myEditor, myFile, myProject, myCachedIntentions)); } else { assert myHint == component; } if (positionHint != null) { myListPopup.show(positionHint); } else { myListPopup.showInBestPositionFor(myEditor); } if (EditorSettingsExternalizable.getInstance().isShowIntentionPreview()) { ApplicationManager.getApplication().invokeLater(this::showPreview); } IntentionFUSCollector.reportShownIntentions(myFile.getProject(), myListPopup, myFile.getLanguage()); myPopupShown = true; }