* lisp/fringe.el (fringe-mode): Doc fix.

* src/window.h (struct window): Change type of 'fringes_outside_margins'
to bitfield.  Fix comment.  Adjust users accordingly.
(struct window): Change type of 'window_end_bytepos' to ptrdiff_t.
Adjust comment.
* src/xdisp.c (try_window_id): Change type of 'first_vpos' and 'vpos'
to ptrdiff_t.
This commit is contained in:
Dmitry Antipov 2012-06-29 15:48:08 +04:00
parent e4d3503065
commit 2af3565e0f
6 changed files with 30 additions and 15 deletions

View file

@ -1,3 +1,7 @@
2012-06-29 Dmitry Antipov <dmantipov@yandex.ru>
* fringe.el (fringe-mode): Doc fix.
2012-06-29 Michael Albinus <michael.albinus@gmx.de>
* net/ange-ftp.el (ange-ftp-get-passwd): Throw if `non-essential'

View file

@ -207,8 +207,8 @@ frame parameter is used."
"Set the default appearance of fringes on all frames.
When called interactively, query the user for MODE. Valid values
for MODE include `none', `default', `left-only', `right-only',
`minimal' and `half'.
for MODE include `no-fringes', `default', `left-only', `right-only',
`minimal' and `half-width'.
When used in a Lisp program, MODE can be a cons cell where the
integer in car specifies the left fringe width and the integer in

View file

@ -1,3 +1,12 @@
2012-06-29 Dmitry Antipov <dmantipov@yandex.ru>
* window.h (struct window): Change type of 'fringes_outside_margins'
to bitfield. Fix comment. Adjust users accordingly.
(struct window): Change type of 'window_end_bytepos' to ptrdiff_t.
Adjust comment.
* xdisp.c (try_window_id): Change type of 'first_vpos' and 'vpos'
to ptrdiff_t.
2012-06-29 Andreas Schwab <schwab@linux-m68k.org>
* gnutls.c (emacs_gnutls_handshake):

View file

@ -5542,7 +5542,7 @@ the return value is nil. Otherwise the value is t. */)
w->right_margin_cols = p->right_margin_cols;
w->left_fringe_width = p->left_fringe_width;
w->right_fringe_width = p->right_fringe_width;
w->fringes_outside_margins = p->fringes_outside_margins;
w->fringes_outside_margins = !NILP (p->fringes_outside_margins);
w->scroll_bar_width = p->scroll_bar_width;
w->vertical_scroll_bar_type = p->vertical_scroll_bar_type;
w->dedicated = p->dedicated;
@ -5858,7 +5858,7 @@ save_window_save (Lisp_Object window, struct Lisp_Vector *vector, int i)
p->right_margin_cols = w->right_margin_cols;
p->left_fringe_width = w->left_fringe_width;
p->right_fringe_width = w->right_fringe_width;
p->fringes_outside_margins = w->fringes_outside_margins;
p->fringes_outside_margins = w->fringes_outside_margins ? Qt : Qnil;
p->scroll_bar_width = w->scroll_bar_width;
p->vertical_scroll_bar_type = w->vertical_scroll_bar_type;
p->dedicated = w->dedicated;
@ -6095,6 +6095,7 @@ display marginal areas and the text area. */)
(Lisp_Object window, Lisp_Object left_width, Lisp_Object right_width, Lisp_Object outside_margins)
{
struct window *w = decode_window (window);
int outside = !NILP (outside_margins);
if (!NILP (left_width))
CHECK_NATNUM (left_width);
@ -6105,11 +6106,11 @@ display marginal areas and the text area. */)
if (FRAME_WINDOW_P (WINDOW_XFRAME (w))
&& (!EQ (w->left_fringe_width, left_width)
|| !EQ (w->right_fringe_width, right_width)
|| !EQ (w->fringes_outside_margins, outside_margins)))
|| w->fringes_outside_margins != outside))
{
w->left_fringe_width = left_width;
w->right_fringe_width = right_width;
w->fringes_outside_margins = outside_margins;
w->fringes_outside_margins = outside;
adjust_window_margins (w);

View file

@ -159,9 +159,6 @@ struct window
/* Width of left and right fringes.
A value of nil or t means use frame values. */
Lisp_Object left_fringe_width, right_fringe_width;
/* Non-nil means fringes are drawn outside display margins;
othersize draw them between margin areas and text. */
Lisp_Object fringes_outside_margins;
/* Pixel width of scroll bars.
A value of nil or t means use frame values. */
@ -330,13 +327,17 @@ struct window
accept that. */
unsigned frozen_window_start_p : 1;
/* Non-zero means fringes are drawn outside display margins.
Otherwise draw them between margin areas and text. */
unsigned fringes_outside_margins : 1;
/* Amount by which lines of this window are scrolled in
y-direction (smooth scrolling). */
int vscroll;
/* Z_BYTE - the buffer position of the last glyph in the current matrix
of W. Only valid if WINDOW_END_VALID is not nil. */
int window_end_bytepos;
/* Z_BYTE - the buffer position of the last glyph in the current matrix of W.
Should be nonnegative, and only valid if window_end_valid is not nil. */
ptrdiff_t window_end_bytepos;
};
/* 1 if W is a minibuffer window. */
@ -612,7 +613,7 @@ struct window
/* Are fringes outside display margins in window W. */
#define WINDOW_HAS_FRINGES_OUTSIDE_MARGINS(W) \
(!NILP ((W)->fringes_outside_margins))
((W)->fringes_outside_margins)
/* Say whether scroll bars are currently enabled for window W,
and which side they are on. */

View file

@ -17761,8 +17761,8 @@ try_window_id (struct window *w)
{
/* Displayed to end of window, but no line containing text was
displayed. Lines were deleted at the end of the window. */
int first_vpos = WINDOW_WANTS_HEADER_LINE_P (w) ? 1 : 0;
int vpos = XFASTINT (w->window_end_vpos);
ptrdiff_t first_vpos = WINDOW_WANTS_HEADER_LINE_P (w) ? 1 : 0;
ptrdiff_t vpos = XFASTINT (w->window_end_vpos);
struct glyph_row *current_row = current_matrix->rows + vpos;
struct glyph_row *desired_row = desired_matrix->rows + vpos;