comparison src/xterm.c @ 45470:adebb58b0c5e

(x_write_glyphs): Clear phys_cursor_on_p if current phys_cursor's hpos is overwritten. This is still not completely correct, as it doesn't really make sense to use hpos at all to get the cursor glyph (as that is relative to the width of the characters on the line, which may have changed during the update).
author Kim F. Storm <storm@cua.dk>
date Wed, 22 May 2002 21:17:45 +0000
parents 0b6da8b7d7ac
children 242a164e3126
comparison
equal deleted inserted replaced
45469:440fa9418f60 45470:adebb58b0c5e
5328 hpos = start - updated_row->glyphs[updated_area]; 5328 hpos = start - updated_row->glyphs[updated_area];
5329 x = x_draw_glyphs (updated_window, output_cursor.x, 5329 x = x_draw_glyphs (updated_window, output_cursor.x,
5330 updated_row, updated_area, 5330 updated_row, updated_area,
5331 hpos, hpos + len, 5331 hpos, hpos + len,
5332 DRAW_NORMAL_TEXT, 0); 5332 DRAW_NORMAL_TEXT, 0);
5333
5334 /* Invalidate old phys cursor if the glyph at its hpos is redrawn. */
5335 if (updated_area == TEXT_AREA
5336 && updated_window->phys_cursor_on_p
5337 && updated_window->phys_cursor.vpos == output_cursor.vpos
5338 && updated_window->phys_cursor.hpos >= hpos
5339 && updated_window->phys_cursor.hpos < hpos + len)
5340 updated_window->phys_cursor_on_p = 0;
5333 5341
5334 UNBLOCK_INPUT; 5342 UNBLOCK_INPUT;
5335 5343
5336 /* Advance the output cursor. */ 5344 /* Advance the output cursor. */
5337 output_cursor.hpos += len; 5345 output_cursor.hpos += len;