void (@NotNull ProgressIndicatorEx delegate) { synchronized (getLock()) { ProgressIndicatorEx[] delegates = myStateDelegates; if (delegates == null) return; myStateDelegates = ArrayUtil.remove(delegates, delegate); } onProgressChange(); }