changeset 66563:50f828c2b337

(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.
author Kim F. Storm <storm@cua.dk>
date Sun, 30 Oct 2005 20:08:09 +0000
parents 2b1397553d1d
children 68bb9e8a5390
files src/xdisp.c
diffstat 1 files changed, 9 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/src/xdisp.c	Sun Oct 30 20:07:50 2005 +0000
+++ b/src/xdisp.c	Sun Oct 30 20:08:09 2005 +0000
@@ -15679,7 +15679,9 @@
 			produce_special_glyphs (it, IT_CONTINUATION);
 		      row->continued_p = 1;
 
+		      it->current_x = x_before;
 		      it->continuation_lines_width += x;
+		      extend_face_to_end_of_line (it);
 
 		      if (nglyphs > 1 && i > 0)
 			{
@@ -16214,7 +16216,7 @@
   while (CONSP (tail))
     {
       tem = XCAR (tail);
-      
+
       if (EQ (elt, tem))
 	{
 	  /* Splice out the link TAIL.  */
@@ -18778,19 +18780,15 @@
 {
   /* If the face of this glyph string has to be drawn to the end of
      the drawing area, set S->extends_to_end_of_line_p.  */
-  struct face *default_face = FACE_FROM_ID (s->f, DEFAULT_FACE_ID);
 
   if (start == s->row->used[s->area]
       && s->area == TEXT_AREA
-      && ((s->hl == DRAW_NORMAL_TEXT
-	   && (s->row->fill_line_p
-	       || s->face->background != default_face->background
-	       || s->face->stipple != default_face->stipple
-	       || s->row->mouse_face_p))
-	  || s->hl == DRAW_MOUSE_FACE
-	  || ((s->hl == DRAW_IMAGE_RAISED || s->hl == DRAW_IMAGE_SUNKEN)
-	      && s->row->fill_line_p)))
-      s->extends_to_end_of_line_p = 1;
+      && ((s->row->fill_line_p
+	   && (s->hl == DRAW_NORMAL_TEXT
+	       || s->hl == DRAW_IMAGE_RAISED
+	       || s->hl == DRAW_IMAGE_SUNKEN))
+	  || s->hl == DRAW_MOUSE_FACE))
+    s->extends_to_end_of_line_p = 1;
 
   /* If S extends its face to the end of the line, set its
      background_width to the distance to the right edge of the drawing