aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGerd Moellmann2000-07-11 19:58:43 +0000
committerGerd Moellmann2000-07-11 19:58:43 +0000
commit64f26cf542f0c0231461c3a80af4cc812dfb1edd (patch)
tree7c0a121bfdd36bf9c0b01122af3ea88a87eb3698 /src
parente4e0bee93c3aa63184bd566641f6411248005843 (diff)
downloademacs-64f26cf542f0c0231461c3a80af4cc812dfb1edd.tar.gz
emacs-64f26cf542f0c0231461c3a80af4cc812dfb1edd.zip
(x_update_window_begin): No need to turn off the mouse
highlight here. (show_mouse_face): Set the mouse_face_p flag of glyph rows depending on whether they contain glyphs highlighted in mouse-face.
Diffstat (limited to 'src')
-rw-r--r--src/xterm.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/xterm.c b/src/xterm.c
index c2f3a49c696..0fe950534e3 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -598,6 +598,13 @@ x_update_window_begin (w)
598 if (FRAME_GARBAGED_P (f)) 598 if (FRAME_GARBAGED_P (f))
599 display_info->mouse_face_window = Qnil; 599 display_info->mouse_face_window = Qnil;
600 600
601#if 0 /* Rows in a current matrix containing glyphs in mouse-face have
602 their mouse_face_p flag set, which means that they are always
603 unequal to rows in a desired matrix which never have that
604 flag set. So, rows containing mouse-face glyphs are never
605 scrolled, and we don't have to switch the mouse highlight off
606 here to prevent it from being scrolled. */
607
601 /* Can we tell that this update does not affect the window 608 /* Can we tell that this update does not affect the window
602 where the mouse highlight is? If so, no need to turn off. 609 where the mouse highlight is? If so, no need to turn off.
603 Likewise, don't do anything if the frame is garbaged; 610 Likewise, don't do anything if the frame is garbaged;
@@ -615,6 +622,7 @@ x_update_window_begin (w)
615 if (i < w->desired_matrix->nrows) 622 if (i < w->desired_matrix->nrows)
616 clear_mouse_face (display_info); 623 clear_mouse_face (display_info);
617 } 624 }
625#endif /* 0 */
618 } 626 }
619 627
620 UNBLOCK_INPUT; 628 UNBLOCK_INPUT;
@@ -7024,8 +7032,11 @@ show_mouse_face (dpyinfo, draw)
7024 } 7032 }
7025 7033
7026 if (end_hpos > start_hpos) 7034 if (end_hpos > start_hpos)
7027 x_draw_glyphs (w, start_x, row, TEXT_AREA, 7035 {
7028 start_hpos, end_hpos, draw, NULL, NULL, 0); 7036 row->mouse_face_p = draw == DRAW_MOUSE_FACE;
7037 x_draw_glyphs (w, start_x, row, TEXT_AREA,
7038 start_hpos, end_hpos, draw, NULL, NULL, 0);
7039 }
7029 } 7040 }
7030 7041
7031 /* If we turned the cursor off, turn it back on. */ 7042 /* If we turned the cursor off, turn it back on. */