void () { if (mySignatureArea == null || myPropagateParamChangesButton == null) return; final Runnable updateRunnable = () -> { if (myUpdateSignatureAlarm.isDisposed()) return; myUpdateSignatureAlarm.cancelAllRequests(); myUpdateSignatureAlarm.addRequest(() -> { if (myProject.isDisposed()) return; PsiDocumentManager.getInstance(myProject).performLaterWhenAllCommitted(() -> updateSignatureAlarmFired()); }, 100, ModalityState.stateForComponent(mySignatureArea)); }; SwingUtilities.invokeLater(updateRunnable); }