aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKim F. Storm2004-11-21 15:47:55 +0000
committerKim F. Storm2004-11-21 15:47:55 +0000
commite1dca3678d5b062a59e923af0b1e9cf56ffa22a5 (patch)
treec755df704b2abb8f506b2eeafbe2fdb36d2607db /src
parentb7fd3518da8ae7c0d03fc2527e4a1925b7e157f5 (diff)
downloademacs-e1dca3678d5b062a59e923af0b1e9cf56ffa22a5.tar.gz
emacs-e1dca3678d5b062a59e923af0b1e9cf56ffa22a5.zip
(erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
Diffstat (limited to 'src')
-rw-r--r--src/xdisp.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index fabc1e108a5..3b7b9d39f81 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -20120,6 +20120,7 @@ erase_phys_cursor (w)
20120 { 20120 {
20121 int x, y; 20121 int x, y;
20122 int header_line_height = WINDOW_HEADER_LINE_HEIGHT (w); 20122 int header_line_height = WINDOW_HEADER_LINE_HEIGHT (w);
20123 int width;
20123 20124
20124 cursor_glyph = get_phys_cursor_glyph (w); 20125 cursor_glyph = get_phys_cursor_glyph (w);
20125 if (cursor_glyph == NULL) 20126 if (cursor_glyph == NULL)
@@ -20127,9 +20128,10 @@ erase_phys_cursor (w)
20127 20128
20128 x = WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x); 20129 x = WINDOW_TEXT_TO_FRAME_PIXEL_X (w, w->phys_cursor.x);
20129 y = WINDOW_TO_FRAME_PIXEL_Y (w, max (header_line_height, cursor_row->y)); 20130 y = WINDOW_TO_FRAME_PIXEL_Y (w, max (header_line_height, cursor_row->y));
20131 width = min (cursor_glyph->pixel_width,
20132 window_box_width (w, TEXT_AREA) - w->phys_cursor.x);
20130 20133
20131 rif->clear_frame_area (f, x, y, 20134 rif->clear_frame_area (f, x, y, width, cursor_row->visible_height);
20132 cursor_glyph->pixel_width, cursor_row->visible_height);
20133 } 20135 }
20134 20136
20135 /* Erase the cursor by redrawing the character underneath it. */ 20137 /* Erase the cursor by redrawing the character underneath it. */