Commit ef8ef9fb authored by Chong Yidong's avatar Chong Yidong
Browse files

* lisp/window.el (window-deletable-p): Never delete last frame on a terminal.

* src/frame.c (Fother_visible_frames_p): Function deleted.
parent b2cba41e
2011-09-13 Chong Yidong <cyd@stupidchicken.com>
* window.el (window-deletable-p): Never delete the last frame on a
given terminal.
2011-09-13 Glenn Morris <rgm@gnu.org>
* help.el (describe-key-briefly): Copy previous standard-output change.
......
......@@ -2312,12 +2312,18 @@ its buffer or has no previous buffer to show instead."
buffer))))))
(cond
((frame-root-window-p window)
(when (and (or force dedicated
;; We can delete the frame if (1) FORCE is non-nil, WINDOW is
;; dedicated to its buffer, or there are no previous buffers to
;; show and (2) there are other visible frames on this terminal.
(and (or force dedicated
(and (not prev) (memq window-auto-delete '(t frame))))
(other-visible-frames-p frame))
;; We can delete WINDOW's frame if (1) either FORCE is non-nil,
;; WINDOW is dedicated to its buffer, or there are no previous
;; buffers to show and (2) there are other visible frames left.
;; Are there visible frames on the same terminal?
(let ((terminal (frame-terminal frame)))
(catch 'found
(dolist (f (delq frame (frame-list)))
(and (eq terminal (frame-terminal f))
(frame-visible-p f)
(throw 'found t)))))
'frame))
((and (or force dedicated
(and (not prev) (memq window-auto-delete '(t window))))
......
2011-09-13 Chong Yidong <cyd@stupidchicken.com>
* frame.c (Fother_visible_frames_p): Function deleted.
2011-09-12 Eli Zaretskii <eliz@gnu.org>
* indent.c (compute_motion): Process display vector front to back
......
......@@ -1155,17 +1155,6 @@ other_visible_frames (FRAME_PTR f)
return 1;
}
DEFUN ("other-visible-frames-p", Fother_visible_frames_p, Sother_visible_frames_p, 0, 1, 0,
doc: /* Return t if there are other visible frames beside FRAME.
FRAME defaults to the selected frame. */)
(Lisp_Object frame)
{
if (NILP (frame))
frame = selected_frame;
CHECK_LIVE_FRAME (frame);
return other_visible_frames (XFRAME (frame)) ? Qt : Qnil;
}
/* Delete FRAME. When FORCE equals Qnoelisp, delete FRAME
unconditionally. x_connection_closed and delete_terminal use
this. Any other value of FORCE implements the semantics
......@@ -4475,7 +4464,6 @@ automatically. See also `mouse-autoselect-window'. */);
defsubr (&Sframe_list);
defsubr (&Snext_frame);
defsubr (&Sprevious_frame);
defsubr (&Sother_visible_frames_p);
defsubr (&Sdelete_frame);
defsubr (&Smouse_position);
defsubr (&Smouse_pixel_position);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment