aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGerd Moellmann2001-08-28 14:34:17 +0000
committerGerd Moellmann2001-08-28 14:34:17 +0000
commit7b0870b2631fa51b5c22b10b69af0ae1306c5954 (patch)
tree0ac1795faa1eafcad55ed1a50d129745c3665434 /src
parent0f76ca04ee0bb58445a1bc86eaa519753d5b29f1 (diff)
downloademacs-7b0870b2631fa51b5c22b10b69af0ae1306c5954.tar.gz
emacs-7b0870b2631fa51b5c22b10b69af0ae1306c5954.zip
(x_set_glyph_string_background_width): Set the glyph
strings background width so that multi-line mouse-face is drawn to the right edge of the window. (show_mouse_face): Set the row's mouse_face_p flag after drawing glyphs.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog6
-rw-r--r--src/xterm.c14
2 files changed, 14 insertions, 6 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index c4dc94cc701..eb8694739d7 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,11 @@
12001-08-28 Gerd Moellmann <gerd@gnu.org> 12001-08-28 Gerd Moellmann <gerd@gnu.org>
2 2
3 * xterm.c (x_set_glyph_string_background_width): Set the glyph
4 string's background width so that multi-line mouse-face is drawn
5 to the right edge of the window.
6 (show_mouse_face): Set the row's mouse_face_p flag after drawing
7 glyphs.
8
3 * dispnew.c (direct_output_for_insert): Set updated_area 9 * dispnew.c (direct_output_for_insert): Set updated_area
4 before insering/writing glyphs. 10 before insering/writing glyphs.
5 11
diff --git a/src/xterm.c b/src/xterm.c
index b472bde7656..66e5c5cfd08 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -4836,12 +4836,14 @@ x_set_glyph_string_background_width (s, start, last_x)
4836 struct face *default_face = FACE_FROM_ID (s->f, DEFAULT_FACE_ID); 4836 struct face *default_face = FACE_FROM_ID (s->f, DEFAULT_FACE_ID);
4837 4837
4838 if (start == s->row->used[s->area] 4838 if (start == s->row->used[s->area]
4839 && s->hl == DRAW_NORMAL_TEXT
4840 && s->area == TEXT_AREA 4839 && s->area == TEXT_AREA
4841 && (s->row->fill_line_p 4840 && ((s->hl == DRAW_NORMAL_TEXT
4842 || s->face->background != default_face->background 4841 && (s->row->fill_line_p
4843 || s->face->stipple != default_face->stipple)) 4842 || s->face->background != default_face->background
4844 s->extends_to_end_of_line_p = 1; 4843 || s->face->stipple != default_face->stipple
4844 || s->row->mouse_face_p))
4845 || s->hl == DRAW_MOUSE_FACE))
4846 s->extends_to_end_of_line_p = 1;
4845 4847
4846 /* If S extends its face to the end of the line, set its 4848 /* If S extends its face to the end of the line, set its
4847 background_width to the distance to the right edge of the drawing 4849 background_width to the distance to the right edge of the drawing
@@ -7696,9 +7698,9 @@ show_mouse_face (dpyinfo, draw)
7696 7698
7697 if (end_hpos > start_hpos) 7699 if (end_hpos > start_hpos)
7698 { 7700 {
7699 row->mouse_face_p = draw == DRAW_MOUSE_FACE || DRAW_IMAGE_RAISED;
7700 x_draw_glyphs (w, start_x, row, TEXT_AREA, 7701 x_draw_glyphs (w, start_x, row, TEXT_AREA,
7701 start_hpos, end_hpos, draw, NULL, NULL, 0); 7702 start_hpos, end_hpos, draw, NULL, NULL, 0);
7703 row->mouse_face_p = draw == DRAW_MOUSE_FACE || DRAW_IMAGE_RAISED;
7702 } 7704 }
7703 } 7705 }
7704 7706