Commit 60457d7a authored by Eli Zaretskii's avatar Eli Zaretskii

Improve documentation of the window tree

* doc/lispref/windows.texi (Windows and Frames): More accurate
wording regarding the relation of a mini-window to its frame's
window tree.

* src/window.h (struct window): Improve commentary to some
fields.
parent ea1a0149
Pipeline #92 passed with stage
in 26 minutes and 45 seconds
......@@ -198,12 +198,13 @@ relationships between live windows. The root node of a window tree is
called the @dfn{root window}. It can be either a live window (if the
frame has just one window), or an internal window.
A minibuffer window (@pxref{Minibuffer Windows}) is not part of its
frame's window tree unless the frame is a minibuffer-only frame.
Nonetheless, most of the functions in this section accept the
minibuffer window as an argument. Also, the function
@code{window-tree} described at the end of this section lists the
minibuffer window alongside the actual window tree.
A minibuffer window (@pxref{Minibuffer Windows}) that is not alone
on its frame does not have a parent window, so it strictly speaking is
not part of its frame's window tree. Nonetheless, it is a sibling
window of the frame's root window, and thus can be reached via
@code{window-next-sibling}. Also, the function @code{window-tree}
described at the end of this section lists the minibuffer window
alongside the actual window tree.
@defun frame-root-window &optional frame-or-window
This function returns the root window for @var{frame-or-window}. The
......
......@@ -93,12 +93,14 @@ struct window
/* The frame this window is on. */
Lisp_Object frame;
/* Following (to right or down) and preceding (to left or up) child
at same level of tree. */
/* Following (to right or down) and preceding (to left or up)
child at same level of tree. Whether this is left/right or
up/down is determined by the 'horizontal' flag, see below.
A minibuffer window has the frame's root window pointed by 'prev'. */
Lisp_Object next;
Lisp_Object prev;
/* The window this one is a child of. */
/* The window this one is a child of. For a minibuffer window: nil. */
Lisp_Object parent;
/* The normal size of the window. These are fractions, but we do
......@@ -113,7 +115,9 @@ struct window
Lisp_Object new_normal;
Lisp_Object new_pixel;
/* May be buffer, window, or nil. */
/* For a leaf window: a buffer; for an internal window: a window;
for a pseudo-window (such as menu bar or tool bar): nil. It is
a buffer for a minibuffer window as well. */
Lisp_Object contents;
/* A marker pointing to where in the text to start displaying.
......
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