private void queueUpdate(final VirtualFile file) {
   if (file == null) return;
   if (getProject().isDisposed()) return;
   ApplicationManager.getApplication()
       .invokeLater(
           () -> {
             if (getProject().isDisposed()) return;
             if (!file.isValid() || isRightFile(file)) {
               myBuilder.updateFromRoot();
             }
           });
 }
 public final void updateTree() {
   myBuilder.updateFromRoot();
 }