ListPopup (@NotNull Project project, @NotNull ListPopupStep step, @NotNull Function<? super ListCellRenderer, ? extends ListCellRenderer> cellRendererProducer) { return new ListPopupImpl(project, step) { @Override protected ListCellRenderer<?> getListElementRenderer() { return cellRendererProducer.apply(super.getListElementRenderer()); } }; }