[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r116670: Various window code related fixes and docum
From: |
Martin Rudalics |
Subject: |
[Emacs-diffs] trunk r116670: Various window code related fixes and documentation changes. |
Date: |
Wed, 05 Mar 2014 13:51:17 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 116670
revision-id: address@hidden
parent: address@hidden
committer: martin rudalics <address@hidden>
branch nick: trunk
timestamp: Wed 2014-03-05 14:50:48 +0100
message:
Various window code related fixes and documentation changes.
* dispnew.c (change_frame_size_1): Add new_lines instead of
new_height, the latter may be still zero if passed as such.
* window.c (Fwindow_pixel_height): Mention bottom divider in
doc-string.
* window.el (window-min-height, window-min-width): Rewrite
doc-strings.
(window-body-size): Add PIXELWISE argument to make it consistent
with its callees.
* display.texi (Window Dividers): New section.
* frames.texi (Layout Parameters): Add right-divider-width and
bottom-divider-width.
* windows.texi (Window Sizes): Redraw schematic and rewrite its
description. Rewrite descriptions of `window-total-height',
`window-total-width', `window-total-size', `window-body-height',
`window-body-width' and `window-size-fixed'. Add descriptions
for `window-pixel-height', `window-pixel-width',
`window-min-height' and `window-min-width'. Remove description
of `window-size-fixed-p' moving part of it to that of
`window-size-fixed'.
(Resizing Windows): Mention dividers when talking about minimum
sizes.
modified:
doc/lispref/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-6155
doc/lispref/display.texi
display.texi-20091113204419-o5vbwnq5f7feedwu-6172
doc/lispref/frames.texi
frames.texi-20091113204419-o5vbwnq5f7feedwu-6180
doc/lispref/windows.texi
windows.texi-20091113204419-o5vbwnq5f7feedwu-6224
lisp/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1432
lisp/window.el window.el-20091113204419-o5vbwnq5f7feedwu-94
src/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1438
src/dispnew.c dispnew.c-20091113204419-o5vbwnq5f7feedwu-258
src/window.c window.c-20091113204419-o5vbwnq5f7feedwu-231
=== modified file 'doc/lispref/ChangeLog'
--- a/doc/lispref/ChangeLog 2014-03-05 07:41:48 +0000
+++ b/doc/lispref/ChangeLog 2014-03-05 13:50:48 +0000
@@ -1,3 +1,19 @@
+2014-03-05 Martin Rudalics <address@hidden>
+
+ * display.texi (Window Dividers): New section.
+ * frames.texi (Layout Parameters): Add right-divider-width and
+ bottom-divider-width.
+ * windows.texi (Window Sizes): Redraw schematic and rewrite its
+ description. Rewrite descriptions of `window-total-height',
+ `window-total-width', `window-total-size', `window-body-height',
+ `window-body-width' and `window-size-fixed'. Add descriptions
+ for `window-pixel-height', `window-pixel-width',
+ `window-min-height' and `window-min-width'. Remove description
+ of `window-size-fixed-p' moving part of it to that of
+ `window-size-fixed'.
+ (Resizing Windows): Mention dividers when talking about minimum
+ sizes.
+
2014-03-05 Glenn Morris <address@hidden>
* modes.texi (SMIE Customization): New section.
=== modified file 'doc/lispref/display.texi'
--- a/doc/lispref/display.texi 2014-03-01 02:54:08 +0000
+++ b/doc/lispref/display.texi 2014-03-05 13:50:48 +0000
@@ -24,6 +24,7 @@
font, colors, etc.
* Fringes:: Controlling window fringes.
* Scroll Bars:: Controlling vertical scroll bars.
+* Window Dividers:: Separating windows visually.
* Display Property:: Enabling special display features.
* Images:: Displaying images in Emacs buffers.
* Buttons:: Adding clickable buttons to Emacs buffers.
@@ -3896,6 +3897,53 @@
to use the value specified by the frame.
@end defvar
address@hidden Window Dividers
address@hidden Window Dividers
address@hidden window dividers
address@hidden right dividers
address@hidden bottom dividers
+
+Window dividers are bars drawn between a frame's windows. A ``right''
+divider is drawn between a window and its sibling(s) on the right. Its
+width is specified by the frame parameter @code{right-divider-width}. A
+``bottom'' divider is drawn between a window and its sibling(s) on the
+bottom or the echo area. Its width is specified by the frame parameter
address@hidden In either case, specifying a width of zero
+means to not draw such dividers. @xref{Layout Parameters}.
+
+ Technically, a right divider ``belongs'' to the window on its left,
+which means that its width is part of the total width of that window. A
+bottom divider ``belongs'' to the window above it, which means that its
+height is part of the total height of that window. @xref{Window Sizes}.
+When a window has both, a right and a bottom divider, the bottom divider
+``prevails''. This means that the width of the bottom divider equals
+the total width of the window while the height of the right divider
+equals the total height of the window minus the height of the bottom
+divider.
+
+ Dividers can be dragged with the mouse and are therefore useful for
+adjusting the sizes of adjacent windows with the mouse. They also serve
+to set windows visually apart from their siblings when no scroll bars or
+mode lines are present. The following three faces allow to customize
+the appearance of dividers:
+
address@hidden @code
address@hidden window-divider
+When a divider is less than three pixels wide, it is drawn solidly with
+the foreground of this face. For larger dividers this face is used for
+the inner part only, exluding the first and last pixel.
+
address@hidden window-divider-first-pixel
+This is the face used for drawing the first pixel of a divider that is
+at least three pixels wide. To obtain a solid appearance, set this to
+the same value used for the @code{window-divider} face.
+
address@hidden window-divider-last-pixel
+This is the face used for drawing the last pixel of a divider that is at
+least three pixels wide. To obtain a solid appearance, set this to the
+same value used for the @code{window-divider} face.
address@hidden table
+
@node Display Property
@section The @code{display} Property
@cindex display specification
=== modified file 'doc/lispref/frames.texi'
--- a/doc/lispref/frames.texi 2014-03-03 01:00:27 +0000
+++ b/doc/lispref/frames.texi 2014-03-05 13:50:48 +0000
@@ -745,6 +745,18 @@
precise width by specifying that width as a negative integer. If both
widths are negative, only the left fringe gets the specified width.
address@hidden right-divider-width, a frame parameter
address@hidden right-divider-width
+The width of the right divider (@pxref{Window Dividers}) of any window
+on the frame, in pixels. A value of zero means to not draw right
+dividers.
+
address@hidden bottom-divider-width, a frame parameter
address@hidden bottom-divider-width
+The width of the bottom divider (@pxref{Window Dividers}) of any window
+on the frame, in pixels. A value of zero means to not draw bottom
+dividers.
+
@vindex menu-bar-lines frame parameter
@item menu-bar-lines
The number of lines to allocate at the top of the frame for a menu
=== modified file 'doc/lispref/windows.texi'
--- a/doc/lispref/windows.texi 2014-03-04 10:44:46 +0000
+++ b/doc/lispref/windows.texi 2014-03-05 13:50:48 +0000
@@ -382,6 +382,7 @@
@code{window-edges} (@pxref{Coordinates and Windows}).
@end defun
+
@node Window Sizes
@section Window Sizes
@cindex window size
@@ -391,18 +392,18 @@
@smallexample
@group
- _________________________________________
- ^ |______________ Header Line_______________|
- | |LS|LF|LM| |RM|RF|RS| ^
- | | | | | | | | | |
- Window | | | | Text Area | | | | Window
- Total | | | | (Window Body) | | | | Body
- Height | | | | | | | | Height
- | | | | |<- Window Body Width ->| | | | |
- | |__|__|__|_______________________|__|__|__| v
- v |_______________ Mode Line _______________|
-
- <----------- Window Total Width -------->
+ ____________________________________________
+ |______________ Header Line ______________|RD| ^
+ ^ |LS|LF|LM| |RM|RF|RS| | |
+ | | | | | | | | | | |
+Window | | | | Text Area | | | | | Window
+Body | | | | | (Window Body) | | | | | Total
+Height | | | | | | | | | Height
+ | | | | |<- Window Body Width ->| | | | | |
+ v |__|__|__|_______________________|__|__|__| | |
+ |_______________ Mode Line _______________|__| |
+ |_____________ Bottom Divider _______________| v
+ <---------- Window Total Width ------------>
@end group
@end smallexample
@@ -411,104 +412,136 @@
@cindex text area of a window
@cindex body of a window
At the center of the window is the @dfn{text area}, or @dfn{body},
-where the buffer text is displayed. On each side of the text area is
-a series of vertical areas; from innermost to outermost, these are the
-left and right margins, denoted by LM and RM in the schematic
-(@pxref{Display Margins}); the left and right fringes, denoted by LF
-and RF (@pxref{Fringes}); and the left or right scroll bar, only one of
-which is present at any time, denoted by LS and RS (@pxref{Scroll
-Bars}). At the top of the window is an optional header line
-(@pxref{Header Lines}), and at the bottom of the window is the mode
-line (@pxref{Mode Line Format}).
-
- Emacs provides several functions for finding the height and width of
-a window. Except where noted, Emacs reports window heights and widths
-as integer numbers of lines and columns, respectively. On a graphical
-display, each ``line'' and ``column'' actually corresponds to the
-height and width of a ``default'' character specified by the frame's
-default font. Thus, if a window is displaying text with a different
-font or size, the reported height and width for that window may differ
-from the actual number of text lines or columns displayed within it.
-
address@hidden window-size &optional window horizontal pixelwise round
-This function returns the height or width of @var{window}.
address@hidden must be a valid window. The default value of
address@hidden is the selected window.
-
-If @var{horizontal} is omitted or nil, return the total height of
address@hidden, in lines; otherwise return the total width in columns.
-
-The optional argument @var{pixelwise} means return size of
address@hidden, in pixels.
-
-The optional argument @var{round} is ignored if @var{pixelwise} is
address@hidden Otherwise it is handled as for
address@hidden and @code{window-total-width}.
address@hidden defun
+where the buffer text is displayed. The text area can be surrounded by
+a series of optional areas. On the left and right, from innermost to
+outermost, these are the left and right margins, denoted by LM and RM in
+the schematic (@pxref{Display Margins}); the left and right fringes,
+denoted by LF and RF (@pxref{Fringes}); the left or right scroll bar,
+only one of which is present at any time, denoted by LS and RS
+(@pxref{Scroll Bars}); and the right divider, denoted by RD
+(@pxref{Window Dividers}). At the top of the window is the header line
+(@pxref{Header Lines}); at the bottom of the window is the mode line
+(@pxref{Mode Line Format}) followed by the bottom divider (@pxref{Window
+Dividers}).
+
+ Emacs provides miscellaneous functions for finding the height and
+width of a window. The return value of many of these functions can be
+specified either in units of pixels or in units of lines and columns.
+On a graphical display, the latter actually correspond to the height and
+width of a ``default'' character specified by the frame's default font
+as returned by @code{frame-char-height} and @code{frame-char-width}
+(@pxref{Size and Position}). Thus, if a window is displaying text with
+a different font or size, the reported line height and column width for
+that window may differ from the actual number of text lines or columns
+displayed within it.
@cindex window height
@cindex height of a window
@cindex total height of a window
+ The @dfn{total height} of a window is the number of lines comprising
+the window's body, the header line, the mode line and the bottom divider
+(if any). Note that the height of a frame is not the same as the height
+of its root window (@pxref{Windows and Frames}), since a frame may also
+contain an echo area, a menu bar, and a tool bar (@pxref{Size and
+Position}).
+
address@hidden window-total-height &optional window round
+This function returns the total height, in lines, of the window
address@hidden If @var{window} is omitted or @code{nil}, it defaults to
+the selected window. If @var{window} is an internal window, the return
+value is the total height occupied by its descendant windows.
+
+ If a window's pixel height is not an integral multiple of its frame's
+default character height, the number of lines occupied by the window is
+rounded internally. This is done in a way such that, if the window is a
+parent window, the sum of the total heights of all its child windows
+internally equals the total height of their parent. This means that
+although two windows have the same pixel height, their internal total
+heights may differ by one line. This means also, that if this window is
+vertically combined and has a right sibling, the topmost row of that
+sibling can be calculated as the sum of this window's topmost row and
+total height (@pxref{Coordinates and Windows})
+
+ If the optional argument @var{round} equals @code{ceiling}, this
+function returns the smallest integer larger than @var{window}'s pixel
+height divided by the character height of @var{window}'s frame; if it is
address@hidden, it returns the largest integer smaller than @var{window}'s
+pixel height divided by the character height of @var{window}'s frame.
+Any other value of @var{round} means to return the internal value of the
+total height of @var{window}.
address@hidden defun
+
@cindex window width
@cindex width of a window
@cindex total width of a window
- The @dfn{total height} of a window is the distance between the top
-and bottom of the window, including the header line (if one exists)
-and the mode line. The @dfn{total width} of a window is the distance
-between the left and right edges of the mode line. Note that the
-height of a frame is not the same as the height of its windows, since
-a frame may also contain an echo area, menu bar, and tool bar
-(@pxref{Size and Position}).
-
address@hidden window-total-height &optional window round
-This function returns the total height, in lines, of the window
address@hidden If @var{window} is omitted or @code{nil}, it defaults
-to the selected window. If @var{window} is an internal window, the
-return value is the total height occupied by its descendant windows.
-
-If @var{window}'s pixel height is not an integral multiple of its
-frame's character height, the number of lines occupied by @var{window}
-is rounded internally. This is done in a way such that, if
address@hidden is a parent window, the sum of the total heights of all
-its children internally equals the total height of @var{window}.
-
-If the optional argument @var{round} is @code{ceiling}, this function
-will return the smallest integer larger than @var{window}'s pixel
-height divided by the character height of @var{window}'s frame; if it
-is @code{floor}, return the largest integer smaller than
address@hidden's pixel height divided by the character height of
address@hidden's frame. Any other value of @var{round} means to return
-the internal total height of @var{window}.
address@hidden defun
+The @dfn{total width} of a window is the number of lines comprising the
+window's body, its margins, fringes, scroll bars and a right divider (if
+any).
@defun window-total-width &optional window round
This function returns the total width, in columns, of the window
address@hidden If @var{window} is omitted or @code{nil}, it defaults
-to the selected window. If @var{window} is internal, the return value
-is the total width occupied by its descendant windows.
address@hidden If @var{window} is omitted or @code{nil}, it defaults to
+the selected window. If @var{window} is internal, the return value is
+the total width occupied by its descendant windows.
-If @var{window}'s pixel width is not an integral multiple of its
-frame's character width, the number of lines occupied by @var{window}
-is rounded internally. This is done in a way such that, if
address@hidden is a parent window, the sum of the total widths of all
-its children internally equals the total width of @var{window}.
+ If a window's pixel width is not an integral multiple of its frame's
+character width, the number of lines occupied by the window is rounded
+internally. This is done in a way such that, if the window is a parent
+window, the sum of the total widths of all its children internally
+equals the total width of their parent. This means that although two
+windows have the same pixel width, their internal total widths may
+differ by one column. This means also, that if this window is
+horizontally combined and has a right sibling, the leftmost column of
+that sibling can be calculated as the sum of this window's leftmost
+column and total width (@pxref{Coordinates and Windows}).
If the optional argument @var{round} is @code{ceiling}, this function
-will return the smallest integer larger than @var{window}'s pixel
-width divided by the character width of @var{window}'s frame; if it is
address@hidden, return the largest integer smaller than @var{window}'s
-pixel width divided by the character width of @var{window}'s frame.
-Any other value of @var{round} means to return the internal total
-width of @var{window}.
+will return the smallest integer larger than @var{window}'s pixel width
+divided by the character width of @var{window}'s frame; if it is
address@hidden, it returns the largest integer smaller than @var{window}'s
+pixel width divided by the character width of @var{window}'s frame. Any
+other value of @var{round} means to return the internal total width of
address@hidden
@end defun
@defun window-total-size &optional window horizontal round
-This function returns either the total height or width of the window
address@hidden If @var{horizontal} is omitted or @code{nil}, this is
-equivalent to calling @code{window-total-height} for @var{window};
-otherwise it is equivalent to calling @code{window-total-width} for
address@hidden The optional argument @code{ROUND} is handled as for
address@hidden and @code{window-total-width}.
+This function returns either the total height in lines or the total
+width in columns of the window @var{window}. If @var{horizontal} is
+omitted or @code{nil}, this is equivalent to calling
address@hidden for @var{window}; otherwise it is equivalent
+to calling @code{window-total-width} for @var{window}. The optional
+argument @code{ROUND} is handled as for @code{window-total-height} and
address@hidden
address@hidden defun
+
+The following two functions can be used to return the total size of a
+window in units of pixels.
+
address@hidden window pixel height
address@hidden pixel height of a window
address@hidden total pixel height of a window
+
address@hidden window-pixel-height &optional window
+This function returns the total height of window @var{window} in pixels.
address@hidden must be a valid window and defaults to the selected one.
+
+The return value includes mode and header line and a bottom divider, if
+any. If @var{window} is an internal window, its pixel height is the
+pixel height of the screen areas spanned by its children.
address@hidden defun
+
address@hidden window pixel height
address@hidden pixel height of a window
address@hidden total pixel height of a window
+
address@hidden window-pixel-width &optional Lisp_Object &optional window
+This function returns the width of window @var{window} in pixels.
address@hidden must be a valid window and defaults to the selected one.
+
+The return value includes the fringes and margins of @var{window} as
+well as any vertical dividers or scroll bars belonging to @var{window}.
+If @var{window} is an internal window, its pixel width is the width of
+the screen areas spanned by its children.
@end defun
@cindex full-width window
@@ -533,40 +566,51 @@
@cindex window body height
@cindex body height of a window
@cindex window body width
+The @dfn{body height} of a window is the height of its text area, which
+does not include a mode or header line or a bottom divider.
+
address@hidden window-body-height &optional window pixelwise
+This function returns the height, in lines, of the body of window
address@hidden If @var{window} is omitted or @code{nil}, it defaults to
+the selected window; otherwise it must be a live window.
+
+If the optional argument @var{pixelwise} is address@hidden, this
+function returns the body height of @var{window} counted in pixels.
+
+If @var{pixelwise} is @code{nil}, the return value is rounded down to
+the nearest integer, if necessary. This means that if a line at the
+bottom of the text area is only partially visible, that line is not
+counted. It also means that the height of a window's body can never
+exceed its total height as returned by @code{window-total-height}.
address@hidden defun
+
@cindex body width of a window
@cindex body size of a window
@cindex window body size
- The @dfn{body height} of a window is the height of its text area,
-which does not include the mode or header line. Similarly, the
address@hidden width} is the width of the text area, which does not include
-the scroll bar, fringes, or margins.
-
address@hidden window-body-height &optional window pixelwise
-This function returns the body height, in lines, of the window
address@hidden If @var{window} is omitted or @code{nil}, it defaults
-to the selected window; otherwise it must be a live window.
-
-If there is a partially-visible line at the bottom of the text area,
-that counts as a whole line; to exclude such a partially-visible line,
-use @code{window-text-height}, below.
address@hidden defun
+The @dfn{body width} of a window is the width of its text area, which
+does not include the scroll bar, fringes, margins or a right divider.
@defun window-body-width &optional window pixelwise
-This function returns the body width, in columns, of the window
address@hidden If @var{window} is omitted or @code{nil}, it defaults
-to the selected window; otherwise it must be a live window.
address@hidden defun
-
address@hidden window-body-size &optional window horizontal
-This function returns the body height or body width of @var{window}.
-If @var{horizontal} is omitted or @code{nil}, it is equivalent to
-calling @code{window-body-height} for @var{window}; otherwise it is
-equivalent to calling @code{window-body-width}.
address@hidden defun
-
address@hidden window-text-height &optional window
-This function is like @code{window-body-height}, except that any
-partially-visible line at the bottom of the text area is not counted.
+This function returns the width, in columns, of the body of window
address@hidden If @var{window} is omitted or @code{nil}, it defaults to
+the selected window; otherwise it must be a live window.
+
+If the optional argument @var{pixelwise} is address@hidden, this
+function returns the body width of @var{window} in units of pixels.
+
+If @var{pixelwise} is @code{nil}, the return value is rounded down to
+the nearest integer, if necessary. This means that if a column on the
+right of the text area is only partially visible, that column is not
+counted. It also means that the width of a window's body can never
+exceed its total width as returned by @code{window-total-width}.
address@hidden defun
+
address@hidden window-body-size &optional window horizontal pixelwise
+This function returns the body height or body width of @var{window}. If
address@hidden is omitted or @code{nil}, it is equivalent to calling
address@hidden for @var{window}; otherwise it is equivalent
+to calling @code{window-body-width}. In either case, the optional
+argument @var{pixelwise} is passed to the function called.
@end defun
For compatibility with previous versions of Emacs,
@@ -579,11 +623,22 @@
@vindex window-min-width
Commands that change the size of windows (@pxref{Resizing Windows}),
or split them (@pxref{Splitting Windows}), obey the variables
address@hidden and @code{window-min-width}, which specify
-the smallest allowable window height and width. @xref{Change
-Window,,Deleting and Rearranging Windows, emacs, The GNU Emacs
-Manual}. They also obey the variable @code{window-size-fixed}, with
-which a window can be @dfn{fixed} in size:
address@hidden and @code{window-min-width}, which specify the
+smallest allowable window height and width. They also obey the variable
address@hidden, with which a window can be @dfn{fixed} in
+size:
+
address@hidden window-min-height
+This option specifies the minimum total height, in lines, of any window.
+Its value has to accommodate at least one text line as well as a mode
+and header line and a bottom divider, if present.
address@hidden defopt
+
address@hidden window-min-width
+This option specifies the minimum total width, in columns, of any
+window. Its value has to accommodate two text columns as well as
+margins, fringes, a scroll bar and a right divider, if present.
address@hidden defopt
@defvar window-size-fixed
If this buffer-local variable is address@hidden, the size of any
@@ -594,26 +649,13 @@
If the value is @code{height}, then only the window's height is fixed;
if the value is @code{width}, then only the window's width is fixed.
Any other address@hidden value fixes both the width and the height.
+
+If this variable is @code{nil}, this does not necessarily mean that any
+window showing the buffer can be resized in the desired direction. To
+determine that, use the function @code{window-resizable}.
address@hidden Windows}.
@end defvar
address@hidden window-size-fixed-p &optional window horizontal
-This function returns a address@hidden value if @var{window}'s height
-is fixed. If @var{window} is omitted or @code{nil}, it defaults to
-the selected window. If the optional argument @var{horizontal} is
address@hidden, the return value is address@hidden if @var{window}'s
-width is fixed.
-
-A @code{nil} return value does not necessarily mean that @var{window}
-can be resized in the desired direction. To determine that, use the
-function @code{window-resizable}. @xref{Resizing Windows}.
address@hidden defun
-
- @xref{Coordinates and Windows}, for more functions that report the
-positions of various parts of a window relative to the frame, from
-which you can calculate its size. In particular, you can use the
-functions @code{window-pixel-edges} and
address@hidden to find the size in pixels, for
-graphical displays.
@node Resizing Windows
@section Resizing Windows
@@ -653,11 +695,12 @@
@xref{Change Window,, Deleting and Rearranging Windows, emacs, The GNU
Emacs Manual}. However, if the optional argument @var{ignore} is
address@hidden, this function ignores @code{window-min-height} and
address@hidden, as well as @code{window-size-fixed}.
-Instead, it considers the minimum-height window to be one consisting
-of a header (if any), a mode line, plus a text area one line tall; and
-a minimum-width window as one consisting of fringes, margins, and
-scroll bar (if any), plus a text area two columns wide.
address@hidden, as well as @code{window-size-fixed}. Instead,
+it considers the minimum-height window to be one consisting of a header,
+a mode line and a bottom divider (if any), plus a text area one line
+tall; and a minimum-width window as one consisting of fringes, margins,
+a scroll bar and a right divider (if any), plus a text area two columns
+wide.
If the optional argument @code{pixelwise} is address@hidden,
@var{delta} will be interpreted as pixels.
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2014-03-05 13:09:17 +0000
+++ b/lisp/ChangeLog 2014-03-05 13:50:48 +0000
@@ -1,3 +1,10 @@
+2014-03-05 Martin Rudalics <address@hidden>
+
+ * window.el (window-min-height, window-min-width): Rewrite
+ doc-strings.
+ (window-body-size): Add PIXELWISE argument to make it consistent
+ with its callees.
+
2014-03-05 Juanma Barranquero <address@hidden>
* finder.el (finder-mode-map, finder-mode-syntax-table):
=== modified file 'lisp/window.el'
--- a/lisp/window.el 2014-03-04 10:44:46 +0000
+++ b/lisp/window.el 2014-03-05 13:50:48 +0000
@@ -319,10 +319,11 @@
(frame-char-size (window-normalize-window window))))
(defcustom window-min-height 4
- "The minimum number of lines of any window.
-The value has to accommodate a mode- or header-line if present.
-A value less than `window-safe-min-height' is ignored. The value
-of this variable is honored when windows are resized or split.
+ "The minimum total height, in lines, of any window.
+The value has to accommodate one text line, a mode and header
+line, and a bottom divider, if present. A value less than
+`window-safe-min-height' is ignored. The value of this variable
+is honored when windows are resized or split.
Applications should never rebind this variable. To resize a
window to a height less than the one specified here, an
@@ -349,11 +350,11 @@
(frame-char-size (window-normalize-window window) t)))
(defcustom window-min-width 10
- "The minimum number of columns of any window.
-The value has to accommodate margins, fringes, or scrollbars if
-present. A value less than `window-safe-min-width' is ignored.
-The value of this variable is honored when windows are resized or
-split.
+ "The minimum total width, in columns, of any window.
+The value has to accommodate two text columns as well as margins,
+fringes, a scroll bar and a right divider, if present. A value
+less than `window-safe-min-width' is ignored. The value of this
+variable is honored when windows are resized or split.
Applications should never rebind this variable. To resize a
window to a width less than the one specified here, an
@@ -1671,16 +1672,17 @@
(= (window-pixel-width window)
(window-pixel-width (frame-root-window window))))
-(defun window-body-size (&optional window horizontal)
+(defun window-body-size (&optional window horizontal pixelwise)
"Return the height or width of WINDOW's text area.
WINDOW must be a live window and defaults to the selected one.
If HORIZONTAL is omitted or nil, return the height of the text
area, like `window-body-height'. Otherwise, return the width of
-the text area, like `window-body-width'."
+the text area, like `window-body-width'. In either case, the
+optional argument PIXELWISE is passed to the functions."
(if horizontal
- (window-body-width window)
- (window-body-height window)))
+ (window-body-width window pixelwise)
+ (window-body-height window pixelwise)))
(defun window-current-scroll-bars (&optional window)
"Return the current scroll bar settings for WINDOW.
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2014-03-05 06:31:57 +0000
+++ b/src/ChangeLog 2014-03-05 13:50:48 +0000
@@ -1,6 +1,14 @@
+2014-03-05 Martin Rudalics <address@hidden>
+
+ * dispnew.c (change_frame_size_1): Add new_lines instead of
+ new_height, the latter may be still zero if passed as such.
+ * window.c (Fwindow_pixel_height): Mention bottom divider in
+ doc-string.
+
2014-03-05 Paul Eggert <address@hidden>
- Fix "resource temporarily unavailable" with xgselect (Bug#16925).
+ Fix "resource temporarily unavailable" with xgselect
+ (Bug#16925).
* xgselect.c: Include <stdbool.h>.
(xg_select) [!USE_GTK]: Don't lose track of errno.
=== modified file 'src/dispnew.c'
--- a/src/dispnew.c 2014-01-11 09:31:09 +0000
+++ b/src/dispnew.c 2014-03-05 13:50:48 +0000
@@ -5539,7 +5539,7 @@
/* MSDOS frames cannot PRETEND, as they change frame size by
manipulating video hardware. */
if ((FRAME_TERMCAP_P (f) && !pretend) || FRAME_MSDOS_P (f))
- FrameRows (FRAME_TTY (f)) = new_height;
+ FrameRows (FRAME_TTY (f)) = new_lines;
}
if (new_text_width != FRAME_TEXT_WIDTH (f)
=== modified file 'src/window.c'
--- a/src/window.c 2014-03-01 19:15:29 +0000
+++ b/src/window.c 2014-03-05 13:50:48 +0000
@@ -699,9 +699,9 @@
doc: /* Return the height of window WINDOW in pixels.
WINDOW must be a valid window and defaults to the selected one.
-The return value includes the mode line and header line, if any. If
-WINDOW is an internal window, its pixel height is the height of the
-screen areas spanned by its children. */)
+The return value includes the mode line and header line and the bottom
+divider, if any. If WINDOW is an internal window, its pixel height is
+the height of the screen areas spanned by its children. */)
(Lisp_Object window)
{
return make_number (decode_valid_window (window)->pixel_height);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r116670: Various window code related fixes and documentation changes.,
Martin Rudalics <=