From: Eli Zaretskii <eliz@gnu.org>
Date: Tue, 28 Aug 2001 17:12:20 +0000 (+0000)
Subject: (x_set_glyph_string_background_width)
X-Git-Tag: emacs-pretest-21.0.105~42
X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=f4fccc1e96468c3d3e9cc0e64cbebda715fbfcc0;p=emacs.git

(x_set_glyph_string_background_width)
(show_mouse_face): Track the last changes in xterm.c.
---

diff --git a/src/ChangeLog b/src/ChangeLog
index 92d3da0f3bc..63a749d0a98 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2001-08-28  Eli Zaretskii  <eliz@is.elta.co.il>
+
+	* w32term.c (x_set_glyph_string_background_width)
+	(show_mouse_face): Track the last changes in xterm.c.
+
 2001-08-28  Gerd Moellmann  <gerd@gnu.org>
 
 	* xterm.c (x_set_glyph_string_background_width): Set the glyph
diff --git a/src/w32term.c b/src/w32term.c
index 372c702ecf3..f002441f8ea 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -4678,11 +4678,13 @@ x_set_glyph_string_background_width (s, start, last_x)
   struct face *default_face = FACE_FROM_ID (s->f, DEFAULT_FACE_ID);
   
   if (start == s->row->used[s->area]
-      && s->hl == DRAW_NORMAL_TEXT
       && s->area == TEXT_AREA
-      && (s->row->fill_line_p
-	  || s->face->background != default_face->background
-	  || s->face->stipple != default_face->stipple))
+      && ((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->extends_to_end_of_line_p = 1;
   
   /* If S extends its face to the end of the line, set its
@@ -7099,9 +7101,9 @@ show_mouse_face (dpyinfo, draw)
 
       if (end_hpos > start_hpos)
         {
-          row->mouse_face_p = draw == DRAW_MOUSE_FACE;
           x_draw_glyphs (w, start_x, row, TEXT_AREA,
                          start_hpos, end_hpos, draw, NULL, NULL, 0);
+          row->mouse_face_p = draw == DRAW_MOUSE_FACE;
         }
     }