[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 9a07af0: Clarify concept of "surrogate minibuffer f
From: |
Martin Rudalics |
Subject: |
[Emacs-diffs] master 9a07af0: Clarify concept of "surrogate minibuffer frames" (Bug#20538) |
Date: |
Tue, 19 May 2015 09:09:16 +0000 |
branch: master
commit 9a07af01d046d072520593a729ea18230761e205
Author: Martin Rudalics <address@hidden>
Commit: Martin Rudalics <address@hidden>
Clarify concept of "surrogate minibuffer frames" (Bug#20538)
* src/frame.c (Fdelete_frame): In doc-string mention that frame
can't be deleted if it has a surrogate minibuffer.
* doc/lispref/frames.texi (Minibuffers and Frames)
(Deleting Frames): Explain "surrogate minibuffer frames".
---
doc/lispref/frames.texi | 21 ++++++++++++++-------
src/frame.c | 7 ++++---
2 files changed, 18 insertions(+), 10 deletions(-)
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi
index e19472e..c0d17f0 100644
--- a/doc/lispref/frames.texi
+++ b/doc/lispref/frames.texi
@@ -1624,7 +1624,8 @@ tooltip, it first runs the hook
@code{delete-frame-functions} (each
function gets one argument, @var{frame}). By default, @var{frame} is
the selected frame.
-A frame cannot be deleted if its minibuffer is used by other frames.
+A frame cannot be deleted as long as its minibuffer serves as surrogate
+minibuffer for another frame (@pxref{Minibuffers and Frames}).
Normally, you cannot delete a frame if all other frames are invisible,
but if @var{force} is address@hidden, then you are allowed to do so.
@end deffn
@@ -1700,12 +1701,18 @@ you can get it with @code{minibuffer-window}
(@pxref{Definition of
minibuffer-window}).
@cindex frame without a minibuffer
-However, you can also create a frame with no minibuffer. Such a frame
-must use the minibuffer window of some other frame. When you create the
-frame, you can explicitly specify the minibuffer window to use (in some
-other frame). If you don't, then the minibuffer is found in the frame
-which is the value of the variable @code{default-minibuffer-frame}. Its
-value should be a frame that does have a minibuffer.
address@hidden surrogate minibuffer frame
+However, you can also create a frame without a minibuffer. Such a frame
+must use the minibuffer window of some other frame. That other frame
+will serve as @dfn{surrogate minibuffer frame} for this frame and cannot
+be deleted via @code{delete-frame} (@pxref{Deleting Frames}) as long as
+this frame is live.
+
+When you create the frame, you can explicitly specify the minibuffer
+window to use (in some other frame). If you don't, then the minibuffer
+is found in the frame which is the value of the variable
address@hidden Its value should be a frame that does
+have a minibuffer.
If you use a minibuffer-only frame, you might want that frame to raise
when you enter the minibuffer. If so, set the variable
diff --git a/src/frame.c b/src/frame.c
index 2208655..edf6566 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -1823,9 +1823,10 @@ DEFUN ("delete-frame", Fdelete_frame, Sdelete_frame, 0,
2, "",
doc: /* Delete FRAME, permanently eliminating it from use.
FRAME defaults to the selected frame.
-A frame may not be deleted if its minibuffer is used by other frames.
-Normally, you may not delete a frame if all other frames are invisible,
-but if the second optional argument FORCE is non-nil, you may do so.
+A frame may not be deleted if its minibuffer serves as surrogate
+minibuffer for another frame. Normally, you may not delete a frame if
+all other frames are invisible, but if the second optional argument
+FORCE is non-nil, you may do so.
This function runs `delete-frame-functions' before actually
deleting the frame, unless the frame is a tooltip.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master 9a07af0: Clarify concept of "surrogate minibuffer frames" (Bug#20538),
Martin Rudalics <=