Function: server-stop-automatically--handle-delete-frame

server-stop-automatically--handle-delete-frame is a byte-compiled function defined in server.el.gz.

Signature

(server-stop-automatically--handle-delete-frame FRAME)

Documentation

Handle deletion of FRAME when server-stop-automatically(var)/server-stop-automatically(fun) is used.

Source Code

;; Defined in /usr/src/emacs/lisp/server.el.gz
(defun server-stop-automatically--handle-delete-frame (frame)
  "Handle deletion of FRAME when `server-stop-automatically' is used."
  (when server-stop-automatically
    (if (if (and (processp (frame-parameter frame 'client))
		 (eq this-command 'save-buffers-kill-terminal))
	    (progn
	      (dolist (f (frame-list))
		(when (and (eq (frame-parameter frame 'client)
			       (frame-parameter f 'client))
			   (not (eq frame f)))
		  (set-frame-parameter f 'client nil)
		  (let ((server-stop-automatically nil))
		    (delete-frame f))))
	      (if (cddr (frame-list))
		  (let ((server-stop-automatically nil))
		    (delete-frame frame)
		    nil)
		t))
	  (null (cddr (frame-list))))
	(let ((server-stop-automatically nil))
	  (save-buffers-kill-emacs)
	  (delete-frame frame)))))