void (@Nullable String namePrefix, int caretPosition) { CollectionListModel<Object> model = new CollectionListModel<>(getAttributes()); if (noPrefixSearchValues(model, namePrefix)) { return; } boolean async = myPopup != null; if (updatePopupOrCreate(SearchPopup.Type.AttributeName, model, namePrefix, caretPosition)) { return; } createAndShow(async, new SearchPopupCallback(namePrefix) { @Override public void consume(String value) { appendSearchText(value, prefix); handleShowAttributeValuesPopup(value, null, getCaretPosition()); } }); }