comparison src/xterm.c @ 30153:1eb41ec71ea5

(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.
author Gerd Moellmann <gerd@gnu.org>
date Tue, 11 Jul 2000 19:58:43 +0000
parents 4a3808257cf4
children 432da5a9f734
comparison
equal deleted inserted replaced
30152:f6270e5282da 30153:1eb41ec71ea5
596 /* If F needs to be redrawn, simply forget about any prior mouse 596 /* If F needs to be redrawn, simply forget about any prior mouse
597 highlighting. */ 597 highlighting. */
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;
604 in that case, the frame's current matrix that we would use 611 in that case, the frame's current matrix that we would use
605 is all wrong, and we will redisplay that line anyway. */ 612 is all wrong, and we will redisplay that line anyway. */
613 break; 620 break;
614 621
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;
621 } 629 }
622 630
7022 x_update_window_cursor (w, 0); 7030 x_update_window_cursor (w, 0);
7023 cursor_off_p = 1; 7031 cursor_off_p = 1;
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. */
7032 if (cursor_off_p) 7043 if (cursor_off_p)
7033 x_display_cursor (w, 1, 7044 x_display_cursor (w, 1,