diff options
Diffstat (limited to 'doc/lispref/frames.texi')
-rw-r--r-- | doc/lispref/frames.texi | 47 |
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 |