Function: treemacs-do-update-node

treemacs-do-update-node is a byte-compiled function defined in treemacs-rendering.el.

Signature

(treemacs-do-update-node PATH &optional FORCE-EXPAND)

Documentation

Update the node identified by its PATH.

Throws an error when the node cannot be found. Does nothing if the node is not expanded, unless FORCE-EXPAND is non-nil, in which case the node will be expanded. Same as treemacs-update-node, but does not take care to either save position or assure hl-line highlighting, so it should be used when making multiple updates.

PATH: Node Path FORCE-EXPAND: Boolean

Source Code

;; Defined in ~/.emacs.d/elpa/treemacs-20251226.1307/treemacs-rendering.el
(define-inline treemacs-do-update-node (path &optional force-expand)
  "Update the node identified by its PATH.
Throws an error when the node cannot be found.  Does nothing if the node is not
expanded, unless FORCE-EXPAND is non-nil, in which case the node will be
expanded.
Same as `treemacs-update-node', but does not take care to either save
position or assure hl-line highlighting, so it should be used when making
multiple updates.

PATH: Node Path
FORCE-EXPAND: Boolean"
  (inline-letevals (path force-expand)
    (inline-quote
     (treemacs-without-recenter
      (-if-let (btn (if ,force-expand
                        (treemacs-goto-node ,path)
                      (-some-> (treemacs-find-visible-node ,path)
                        (goto-char))))
          (if (treemacs-is-node-expanded? btn)
              (-let [close-func (alist-get (treemacs-button-get btn :state) treemacs-TAB-actions-config)]
                (funcall close-func)
                ;; close node again if no new lines were rendered
                (when (eq 1 (funcall (alist-get (treemacs-button-get btn :state) treemacs-TAB-actions-config)))
                  (funcall close-func)))
            (when ,force-expand
              (funcall (alist-get (treemacs-button-get btn :state) treemacs-TAB-actions-config))))
        (-when-let (dom-node (treemacs-find-in-dom ,path))
          (setf (treemacs-dom-node->refresh-flag dom-node) nil)))))))