diff options
| author | Kim F. Storm | 2005-10-30 20:08:09 +0000 |
|---|---|---|
| committer | Kim F. Storm | 2005-10-30 20:08:09 +0000 |
| commit | 8a955545b2fe1d90b869e0dc7451defb279c0710 (patch) | |
| tree | 289f94d95dea66eda63123be983ec3ca91ec20c5 /src | |
| parent | 6f07f649e8095e77e41b96b66fd566dc7caae121 (diff) | |
| download | emacs-8a955545b2fe1d90b869e0dc7451defb279c0710.tar.gz emacs-8a955545b2fe1d90b869e0dc7451defb279c0710.zip | |
(display_line): Restore it->current_x and call
extend_face_to_end_of_line when last glyph doesn't fit on line.
(set_glyph_string_background_width): Remove specific tests here
to see if face background should extend to end of line. Simplify.
Diffstat (limited to 'src')
| -rw-r--r-- | src/xdisp.c | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/src/xdisp.c b/src/xdisp.c index a4ac52476bf..4258a99982f 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -15679,7 +15679,9 @@ display_line (it) | |||
| 15679 | produce_special_glyphs (it, IT_CONTINUATION); | 15679 | produce_special_glyphs (it, IT_CONTINUATION); |
| 15680 | row->continued_p = 1; | 15680 | row->continued_p = 1; |
| 15681 | 15681 | ||
| 15682 | it->current_x = x_before; | ||
| 15682 | it->continuation_lines_width += x; | 15683 | it->continuation_lines_width += x; |
| 15684 | extend_face_to_end_of_line (it); | ||
| 15683 | 15685 | ||
| 15684 | if (nglyphs > 1 && i > 0) | 15686 | if (nglyphs > 1 && i > 0) |
| 15685 | { | 15687 | { |
| @@ -16214,7 +16216,7 @@ move_elt_to_front (elt, list) | |||
| 16214 | while (CONSP (tail)) | 16216 | while (CONSP (tail)) |
| 16215 | { | 16217 | { |
| 16216 | tem = XCAR (tail); | 16218 | tem = XCAR (tail); |
| 16217 | 16219 | ||
| 16218 | if (EQ (elt, tem)) | 16220 | if (EQ (elt, tem)) |
| 16219 | { | 16221 | { |
| 16220 | /* Splice out the link TAIL. */ | 16222 | /* Splice out the link TAIL. */ |
| @@ -18778,19 +18780,15 @@ set_glyph_string_background_width (s, start, last_x) | |||
| 18778 | { | 18780 | { |
| 18779 | /* If the face of this glyph string has to be drawn to the end of | 18781 | /* If the face of this glyph string has to be drawn to the end of |
| 18780 | the drawing area, set S->extends_to_end_of_line_p. */ | 18782 | the drawing area, set S->extends_to_end_of_line_p. */ |
| 18781 | struct face *default_face = FACE_FROM_ID (s->f, DEFAULT_FACE_ID); | ||
| 18782 | 18783 | ||
| 18783 | if (start == s->row->used[s->area] | 18784 | if (start == s->row->used[s->area] |
| 18784 | && s->area == TEXT_AREA | 18785 | && s->area == TEXT_AREA |
| 18785 | && ((s->hl == DRAW_NORMAL_TEXT | 18786 | && ((s->row->fill_line_p |
| 18786 | && (s->row->fill_line_p | 18787 | && (s->hl == DRAW_NORMAL_TEXT |
| 18787 | || s->face->background != default_face->background | 18788 | || s->hl == DRAW_IMAGE_RAISED |
| 18788 | || s->face->stipple != default_face->stipple | 18789 | || s->hl == DRAW_IMAGE_SUNKEN)) |
| 18789 | || s->row->mouse_face_p)) | 18790 | || s->hl == DRAW_MOUSE_FACE)) |
| 18790 | || s->hl == DRAW_MOUSE_FACE | 18791 | s->extends_to_end_of_line_p = 1; |
| 18791 | || ((s->hl == DRAW_IMAGE_RAISED || s->hl == DRAW_IMAGE_SUNKEN) | ||
| 18792 | && s->row->fill_line_p))) | ||
| 18793 | s->extends_to_end_of_line_p = 1; | ||
| 18794 | 18792 | ||
| 18795 | /* If S extends its face to the end of the line, set its | 18793 | /* If S extends its face to the end of the line, set its |
| 18796 | background_width to the distance to the right edge of the drawing | 18794 | background_width to the distance to the right edge of the drawing |