Function: cvs-bury-buffer

cvs-bury-buffer is an interactive and byte-compiled function defined in pcvs-util.el.gz.

Signature

(cvs-bury-buffer BUF &optional MAINBUF)

Documentation

Hide the buffer BUF that was temporarily popped up.

BUF is assumed to be a temporary buffer used from the buffer MAINBUF.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/vc/pcvs-util.el.gz
(defun cvs-bury-buffer (buf &optional mainbuf)
  "Hide the buffer BUF that was temporarily popped up.
BUF is assumed to be a temporary buffer used from the buffer MAINBUF."
  (interactive (list (current-buffer)))
  (save-current-buffer
    (let ((win (if (eq buf (window-buffer)) (selected-window)
		 (get-buffer-window buf t))))
      (when win
	(if (window-dedicated-p win)
	    (condition-case ()
		(delete-window win)
	      (error (iconify-frame (window-frame win))))
;;;       (if (and mainbuf (get-buffer-window mainbuf))
;;;           ;; FIXME: if the buffer popped into a pre-existing window,
;;;           ;; we don't want to delete that window.
;;;           t ;;(delete-window win)
;;;           )
	  )))
    (with-current-buffer buf
      (bury-buffer (unless (and (eq buf (window-buffer))
				(not (window-dedicated-p)))
		     buf)))
    (when mainbuf
      (let ((mainwin (or (get-buffer-window mainbuf)
			 (get-buffer-window mainbuf 'visible))))
	(when mainwin (select-window mainwin))))))