void (@NotNull Consumer<? super Node> edtFireTreeNodesChangedQueue) { // performance: always update in background because smart pointer' isValid() can cause PSI chameleons expansion which is ridiculously expensive in cpp ApplicationManager.getApplication().assertIsNonDispatchThread(); boolean isDataValid = isDataValid(); boolean isReadOnly = isDataReadOnly(); String text = getNodeText(); updateCachedPresentation(); doUpdate(isDataValid, isReadOnly, text, edtFireTreeNodesChangedQueue); }