void (@NotNull DocumentEvent event) { if (isReadyForApply()) { super.documentChanged(event); } else { String text = getText(); ReadAction.nonBlocking(() -> myJvmNames.get(text)) .expireWhen(() -> !isVisible()) .finishOnUiThread(ModalityState.defaultModalityState(), s -> super.documentChanged(event)) .submit(NonUrgentExecutor.getInstance()); } }