Function: eca-chat--tool-call-elapsed-tick
eca-chat--tool-call-elapsed-tick is a natively compiled function
defined in eca-chat.el.
Signature
(eca-chat--tool-call-elapsed-tick)
Documentation
Timer callback: update elapsed-time display for all running tool call.
Source Code
;; Defined in /nix/store/jklqzw6pzz6j4jrbv8wy0iwgi7jlrbld-emacs-packages-deps/share/emacs/site-lisp/elpa/eca-20260928.1827/eca-chat.el
(defun eca-chat--tool-call-elapsed-tick ()
"Timer callback: update elapsed-time display for all running tool call."
(eca-chat--allow-write
(maphash
(lambda (id start-time)
(when-let* ((ov-label (eca-chat--get-expandable-content id)))
(let* ((label-start (overlay-start ov-label))
(ov-content (overlay-get ov-label 'eca-chat--expandable-content-ov-content))
(new-time (eca-chat--elapsed-time-string start-time)))
(when ov-content
(let ((label-end (1- (overlay-start ov-content))))
(save-excursion
;; Find the text span with eca-chat--elapsed-time property
(goto-char label-start)
(let ((prop-start (text-property-any label-start label-end
'eca-chat--elapsed-time t)))
(when prop-start
(let ((prop-end (next-single-property-change
prop-start 'eca-chat--elapsed-time nil label-end)))
(goto-char prop-start)
(delete-region prop-start prop-end)
(insert new-time)))))))
;; Keep the overlay property in sync so that functions which
;; rebuild the label from stored properties (e.g.
;; eca-chat--update-parent-subagent-status) use the latest value.
(when (overlay-get ov-label 'eca-chat--tool-call-time)
(overlay-put ov-label 'eca-chat--tool-call-time new-time)))))
eca-chat--tool-call-elapsed-times)))