Function: eca-chat--kill-empty-welcome-buffer
eca-chat--kill-empty-welcome-buffer is a natively compiled function
defined in eca-chat.el.
Signature
(eca-chat--kill-empty-welcome-buffer SESSION BUFFER KEEP-BUFFER)
Documentation
Kill BUFFER for SESSION if it's a fresh welcome chat.
Skips when BUFFER equals KEEP-BUFFER or when the welcome banner is
no longer present (i.e. the user already exchanged messages there).
Marks the chat as eca-chat--closed so the kill-buffer hook does
not prompt for server-side deletion, and dissocs it from the
session's chat registry. Used by eca-chat-resume to clean up
the empty buffer that was used to trigger the resume.
Source Code
;; Defined in /nix/store/jklqzw6pzz6j4jrbv8wy0iwgi7jlrbld-emacs-packages-deps/share/emacs/site-lisp/elpa/eca-20260928.1827/eca-chat.el
(defun eca-chat--kill-empty-welcome-buffer (session buffer keep-buffer)
"Kill BUFFER for SESSION if it's a fresh welcome chat.
Skips when BUFFER equals KEEP-BUFFER or when the welcome banner is
no longer present (i.e. the user already exchanged messages there).
Marks the chat as `eca-chat--closed' so the `kill-buffer' hook does
not prompt for server-side deletion, and dissocs it from the
session's chat registry. Used by `eca-chat-resume' to clean up
the empty buffer that was used to trigger the resume."
(when (and (buffer-live-p buffer)
(not (eq buffer keep-buffer))
(with-current-buffer buffer eca-chat--welcome-shown))
(with-current-buffer buffer
(setq-local eca-chat--closed t)
(when-let* ((cid eca-chat--id))
(setf (eca--session-chats session)
(eca-dissoc (eca--session-chats session) cid))
(eca-chat--invalidate-tab-line-cache session)))
(kill-buffer buffer)
(eca-chat--force-tab-line-update)
(eca-chat--notify-status-changed session)))