boolean (@NotNull Runnable runnable, @NotNull TreeUpdatePass pass) { myYieldingPasses.add(pass); myYieldingNow = true; yieldToEDT(new TreeRunnable("AbstractTreeUi.yieldAndRun") { @Override public void perform() { if (isReleased()) return; runOnYieldingDone(new TreeRunnable("AbstractTreeUi.yieldAndRun: inner") { @Override public void perform() { if (isReleased()) return; executeYieldingRequest(runnable, pass); } }); } }); return true; }