comparison src/redisplay-output.c @ 116:9f59509498e1 r20-1b10

Import from CVS: tag r20-1b10
author cvs
date Mon, 13 Aug 2007 09:23:06 +0200
parents 6a378aca36af
children 3d6bfa290dbd
comparison
equal deleted inserted replaced
115:f109f7dabbe2 116:9f59509498e1
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 ||