Function: treemacs--set-refresh-flags
treemacs--set-refresh-flags is a byte-compiled function defined in
treemacs-filewatch-mode.el.
Signature
(treemacs--set-refresh-flags LOCATION TYPE PATH)
Documentation
Set refresh flags at LOCATION for TYPE and PATH in the dom of every buffer.
Also start the refresh timer if it's not started already.
Source Code
;; Defined in ~/.emacs.d/elpa/treemacs-20251226.1307/treemacs-filewatch-mode.el
(define-inline treemacs--set-refresh-flags (location type path)
"Set refresh flags at LOCATION for TYPE and PATH in the dom of every buffer.
Also start the refresh timer if it's not started already."
(inline-letevals (location type path)
(inline-quote
(progn
(when (ht-get treemacs--collapsed-filewatch-index ,path)
(ht-remove! treemacs--collapsed-filewatch-index ,path)
(treemacs--stop-watching ,path))
(treemacs-run-in-every-buffer
(--when-let (treemacs-find-in-dom ,location)
(let ((current-flag (assoc ,path (treemacs-dom-node->refresh-flag it))))
(pcase (cdr current-flag)
(`nil
(push (cons ,path ,type) (treemacs-dom-node->refresh-flag it)))
('created
(when (eq ,type 'deleted)
(setf (cdr current-flag) 'deleted)))
('deleted
(when (eq ,type 'created)
(setf (cdr current-flag) 'created)))
('changed
(when (eq ,type 'deleted)
(setf (cdr current-flag) 'deleted))))))
(treemacs--start-filewatch-timer))))))