comparison src/redisplay-output.c @ 48:56c54cf7c5b6 r19-16b90

Import from CVS: tag r19-16b90
author cvs
date Mon, 13 Aug 2007 08:56:04 +0200
parents 0293115a14e9
children 131b0175ea99
comparison
equal deleted inserted replaced
47:11c6df210d7f 48:56c54cf7c5b6
331 /* If the new block type is not text and the cursor status is 331 /* If the new block type is not text and the cursor status is
332 changing and it overlaps the position of this block then force a 332 changing and it overlaps the position of this block then force a
333 full redraw of the block in order to make sure that the cursor is 333 full redraw of the block in order to make sure that the cursor is
334 updated properly. */ 334 updated properly. */
335 if (ddb->type != TEXT 335 if (ddb->type != TEXT
336 #if 0
337 /* I'm not sure exactly what this code wants to do, but it's
338 * not right--it doesn't update when cursor_elt changes from, e.g.,
339 * 0 to 8, and the new or old cursor loc overlaps this block.
340 * I've replaced it with the more conservative test below.
341 * -dkindred@cs.cmu.edu 23-Mar-1997 */
336 && ((cdl->cursor_elt == -1 && ddl->cursor_elt != -1) 342 && ((cdl->cursor_elt == -1 && ddl->cursor_elt != -1)
337 || (cdl->cursor_elt != -1 && ddl->cursor_elt == -1)) 343 || (cdl->cursor_elt != -1 && ddl->cursor_elt == -1))
338 && (ddl->cursor_elt == -1 || 344 && (ddl->cursor_elt == -1 ||
339 (cursor_start 345 (cursor_start
340 && cursor_width 346 && cursor_width
341 && (cursor_start + cursor_width) >= start_pixpos 347 && (cursor_start + cursor_width) >= start_pixpos
342 && cursor_start <= block_end))) 348 && cursor_start <= block_end))
349 #else
350 && (cdl->cursor_elt != ddl->cursor_elt)
351 #endif
352 )
343 force = 1; 353 force = 1;
344 354
345 if (f->windows_structure_changed || 355 if (f->windows_structure_changed ||
346 f->faces_changed || 356 f->faces_changed ||
347 cdl->ypos != ddl->ypos || 357 cdl->ypos != ddl->ypos ||