aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Rudalics2019-03-13 10:45:28 +0100
committerMartin Rudalics2019-03-13 10:45:28 +0100
commitbc75589b905f70753ce2ce5f854efb423781287e (patch)
tree216c3ff030157fcd334638a99d1daefbe678a009
parentcc4cebf5f7f23be26d89ec6cd7890cb5ac36326c (diff)
downloademacs-bc75589b905f70753ce2ce5f854efb423781287e.tar.gz
emacs-bc75589b905f70753ce2ce5f854efb423781287e.zip
Document restrictions when setting window margins, fringes or scroll bars
* src/window.c (Fset_window_margins, Fset_window_fringes) (Fset_window_scroll_bars): In doc-strings tell that a window must be large enough to accommodate fringes, sroll bars and margins of the desired size. * doc/lispref/display.texi (Fringe Size/Pos, Scroll Bars) (Display Margins): Tell that windows must be large enough to accommodate fringes, sroll bars and margins of the desired size.
-rw-r--r--doc/lispref/display.texi9
-rw-r--r--src/window.c11
2 files changed, 18 insertions, 2 deletions
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi
index 7892c15b462..e3ee62ffb68 100644
--- a/doc/lispref/display.texi
+++ b/doc/lispref/display.texi
@@ -3916,6 +3916,9 @@ fringe, and likewise @var{right} for the right fringe. A value of
3916@var{outside-margins} is non-@code{nil}, that specifies that fringes 3916@var{outside-margins} is non-@code{nil}, that specifies that fringes
3917should appear outside of the display margins. 3917should appear outside of the display margins.
3918 3918
3919If @var{window} is not large enough to accommodate fringes of the
3920desired width, this leaves the fringes of @var{window} unchanged.
3921
3919The values specified here may be later overridden by invoking 3922The values specified here may be later overridden by invoking
3920@code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window} 3923@code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window}
3921with its @var{keep-margins} argument @code{nil} or omitted. 3924with its @var{keep-margins} argument @code{nil} or omitted.
@@ -4337,6 +4340,9 @@ vertical scroll bar.
4337The possible values are @code{bottom}, @code{t}, which means to use the 4340The possible values are @code{bottom}, @code{t}, which means to use the
4338frame's default, and @code{nil} for no horizontal scroll bar. 4341frame's default, and @code{nil} for no horizontal scroll bar.
4339 4342
4343If @var{window} is not large enough to accommodate a scroll bar of the
4344desired dimension, this leaves the corresponding scroll bar unchanged.
4345
4340The values specified here may be later overridden by invoking 4346The values specified here may be later overridden by invoking
4341@code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window} 4347@code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window}
4342with its @var{keep-margins} argument @code{nil} or omitted. 4348with its @var{keep-margins} argument @code{nil} or omitted.
@@ -4926,6 +4932,9 @@ This function specifies the margin widths for window @var{window}, in
4926character cell units. The argument @var{left} controls the left 4932character cell units. The argument @var{left} controls the left
4927margin, and @var{right} controls the right margin (default @code{0}). 4933margin, and @var{right} controls the right margin (default @code{0}).
4928 4934
4935If @var{window} is not large enough to accommodate margins of the
4936desired width, this leaves the margins of @var{window} unchanged.
4937
4929The values specified here may be later overridden by invoking 4938The values specified here may be later overridden by invoking
4930@code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window} 4939@code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window}
4931with its @var{keep-margins} argument @code{nil} or omitted. 4940with its @var{keep-margins} argument @code{nil} or omitted.
diff --git a/src/window.c b/src/window.c
index 7b879d0e1eb..04183abb7c5 100644
--- a/src/window.c
+++ b/src/window.c
@@ -7076,7 +7076,9 @@ reserve for the left marginal area. Optional third arg RIGHT-WIDTH
7076does the same for the right marginal area. A nil width parameter 7076does the same for the right marginal area. A nil width parameter
7077means no margin. 7077means no margin.
7078 7078
7079Return t if any margin was actually changed and nil otherwise. */) 7079Leave margins unchanged if WINDOW is not large enough to accommodate
7080margins of the desired width. Return t if any margin was actually
7081changed and nil otherwise. */)
7080 (Lisp_Object window, Lisp_Object left_width, Lisp_Object right_width) 7082 (Lisp_Object window, Lisp_Object left_width, Lisp_Object right_width)
7081{ 7083{
7082 struct window *w = set_window_margins (decode_live_window (window), 7084 struct window *w = set_window_margins (decode_live_window (window),
@@ -7158,11 +7160,14 @@ the left fringe. Optional third arg RIGHT-WIDTH specifies the right
7158fringe width. If a fringe width arg is nil, that means to use the 7160fringe width. If a fringe width arg is nil, that means to use the
7159frame's default fringe width. Default fringe widths can be set with 7161frame's default fringe width. Default fringe widths can be set with
7160the command `set-fringe-style'. 7162the command `set-fringe-style'.
7163
7161If optional fourth arg OUTSIDE-MARGINS is non-nil, draw the fringes 7164If optional fourth arg OUTSIDE-MARGINS is non-nil, draw the fringes
7162outside of the display margins. By default, fringes are drawn between 7165outside of the display margins. By default, fringes are drawn between
7163display marginal areas and the text area. 7166display marginal areas and the text area.
7164 7167
7165Return t if any fringe was actually changed and nil otherwise. */) 7168Leave fringes unchanged if WINDOW is not large enough to accommodate
7169fringes of the desired width. Return t if any fringe was actually
7170changed and nil otherwise. */)
7166 (Lisp_Object window, Lisp_Object left_width, 7171 (Lisp_Object window, Lisp_Object left_width,
7167 Lisp_Object right_width, Lisp_Object outside_margins) 7172 Lisp_Object right_width, Lisp_Object outside_margins)
7168{ 7173{
@@ -7287,6 +7292,8 @@ horizontal scroll bar: bottom, nil, or t where nil means to not display
7287a horizontal scroll bar on WINDOW and t means to use WINDOW frame's 7292a horizontal scroll bar on WINDOW and t means to use WINDOW frame's
7288horizontal scroll bar type. 7293horizontal scroll bar type.
7289 7294
7295If WINDOW is not large enough to accommodate a scroll bar of the
7296desired dimension, leave the corresponding scroll bar unchanged.
7290Return t if scroll bars were actually changed and nil otherwise. */) 7297Return t if scroll bars were actually changed and nil otherwise. */)
7291 (Lisp_Object window, Lisp_Object width, Lisp_Object vertical_type, 7298 (Lisp_Object window, Lisp_Object width, Lisp_Object vertical_type,
7292 Lisp_Object height, Lisp_Object horizontal_type) 7299 Lisp_Object height, Lisp_Object horizontal_type)