diff options
| author | Gerd Moellmann | 2000-07-11 19:58:43 +0000 |
|---|---|---|
| committer | Gerd Moellmann | 2000-07-11 19:58:43 +0000 |
| commit | 64f26cf542f0c0231461c3a80af4cc812dfb1edd (patch) | |
| tree | 7c0a121bfdd36bf9c0b01122af3ea88a87eb3698 /src | |
| parent | e4e0bee93c3aa63184bd566641f6411248005843 (diff) | |
| download | emacs-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.c | 15 |
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. */ |