Function: eca-chat--on-buffer-killed
eca-chat--on-buffer-killed is a natively compiled function defined in
eca-chat.el.
Signature
(eca-chat--on-buffer-killed)
Documentation
Handle killing of the current chat buffer.
Switches any window showing this chat to a sibling chat (so a
dedicated chat window is not replaced by an unrelated buffer such
as settings) and drops the chat from the session registry. The
chat is never deleted server-side: it stays resumable and the
server retention cleanup takes care of old chats. Delete
explicitly with eca-chat-delete or the /delete-chat command.
Source Code
;; Defined in /nix/store/jklqzw6pzz6j4jrbv8wy0iwgi7jlrbld-emacs-packages-deps/share/emacs/site-lisp/elpa/eca-20260928.1827/eca-chat.el
(defun eca-chat--on-buffer-killed ()
"Handle killing of the current chat buffer.
Switches any window showing this chat to a sibling chat (so a
dedicated chat window is not replaced by an unrelated buffer such
as settings) and drops the chat from the session registry. The
chat is never deleted server-side: it stays resumable and the
server retention cleanup takes care of old chats. Delete
explicitly with `eca-chat-delete' or the /delete-chat command."
(when (eca-chat--user-initiated-kill-p)
(eca-chat--stream-flush)
(let ((buffer (current-buffer))
(chat-id eca-chat--id))
(when-let* ((session (ignore-errors (eca-session))))
(eca-chat--switch-windows-to-sibling session buffer)
(setf (eca--session-chats session)
(eca-dissoc (eca--session-chats session) chat-id))
(eca-chat--invalidate-tab-line-cache session)
(eca-chat--force-tab-line-update)
(eca-chat--notify-status-changed session)))))