summaryrefslogtreecommitdiff
path: root/doc/lispref/frames.texi
diff options
context:
space:
mode:
Diffstat (limited to 'doc/lispref/frames.texi')
-rw-r--r--doc/lispref/frames.texi47
1 files changed, 35 insertions, 12 deletions
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi
index ec344c726ce..dc1c524653d 100644
--- a/doc/lispref/frames.texi
+++ b/doc/lispref/frames.texi
@@ -1539,6 +1539,13 @@ prevent hanging with those window managers.
If non-@code{nil}, the frame is visible on all virtual desktops on systems
with virtual desktops.
+@vindex inhibit-double-buffering, a frame parameter
+@item inhibit-double-buffering
+If non-@code{nil}, the frame is drawn to the screen without double buffering.
+Emacs normally attempts to use double buffering, where available, to
+reduce flicker. Set this property if you experience display bugs or
+pine for that retro, flicker-y feeling.
+
@ignore
@vindex parent-id, a frame parameter
@item parent-id
@@ -1904,10 +1911,11 @@ to it.
@deffn Command delete-frame &optional frame force
@vindex delete-frame-functions
-This function deletes the frame @var{frame}. Unless @var{frame} is a
-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.
+This function deletes the frame @var{frame}. The argument @var{frame}
+must specify a live frame (see below) and defaults to the selected
+frame. Unless @var{frame} specifies a tooltip, this function first runs
+the hook @code{delete-frame-functions} (each function getting one
+argument, @var{frame}).
A frame cannot be deleted as long as its minibuffer serves as surrogate
minibuffer for another frame (@pxref{Minibuffers and Frames}).
@@ -1916,9 +1924,9 @@ but if @var{force} is non-@code{nil}, then you are allowed to do so.
@end deffn
@defun frame-live-p frame
-The function @code{frame-live-p} returns non-@code{nil} if the frame
-@var{frame} has not been deleted. The possible non-@code{nil} return
-values are like those of @code{framep}. @xref{Frames}.
+This function returns non-@code{nil} if the frame @var{frame} has not
+been deleted. The possible non-@code{nil} return values are like those
+of @code{framep}. @xref{Frames}.
@end defun
Some window managers provide a command to delete a window. These work
@@ -1927,6 +1935,15 @@ When Emacs gets one of these commands, it generates a
@code{delete-frame} event, whose normal definition is a command that
calls the function @code{delete-frame}. @xref{Misc Events}.
+@deffn Command delete-other-frames &optional frame
+This command deletes all frames on @var{frame}'s terminal, except
+@var{frame}. If @var{frame} uses another frame's minibuffer, that
+minibuffer frame is left untouched. The argument @var{frame} must
+specify a live frame and defaults to the selected frame. Internally,
+this command works by calling @code{delete-frame} with @var{force}
+@code{nil} for all frames that shall be deleted.
+@end deffn
+
@node Finding All Frames
@section Finding All Frames
@cindex frames, scanning all
@@ -1946,11 +1963,11 @@ visible, even though only the selected one is actually displayed.
@end defun
@defun next-frame &optional frame minibuf
-This function lets you cycle conveniently through all the frames on
-the current display from an arbitrary starting point. It returns the
-next frame after @var{frame} in the cycle. If @var{frame} is
-omitted or @code{nil}, it defaults to the selected frame (@pxref{Input
-Focus}).
+This function lets you cycle conveniently through all the frames on a
+specific terminal from an arbitrary starting point. It returns the
+frame following @var{frame}, in the list of all live frames, on
+@var{frame}'s terminal. The argument @var{frame} must specify a live
+frame and defaults to the selected frame.
The second argument, @var{minibuf}, says which frames to consider:
@@ -2200,6 +2217,12 @@ window manager. This happens below the level at which Emacs can exert
any control, but Emacs does provide events that you can use to keep
track of such changes. @xref{Misc Events}.
+@defun x-double-buffered-p &optional frame
+This function returns non-@code{nil} if @var{frame} is currently
+being rendered with double buffering. @var{frame} defaults to the
+selected frame.
+@end defun
+
@node Raising and Lowering
@section Raising and Lowering Frames