Subject: Re: bug#16621: 24.3.50; Periodic timer + overlays = flickering near point

From: Eli Zaretskii <[email-masked]>
Date: Wed, 05 Feb 2014 22:00:47 +0200

> From: Stefan Monnier <[email-masked]>
> Cc: [email-masked],  [email-masked],  [email-masked]
> Date: Wed, 05 Feb 2014 13:57:43 -0500
> 
> > I thought I explained a few messages back what "flag" is that: the
> > moment we redisplay the echo area, we are forced to call update_frame,
> > for the selected frame, which will redraw the cursors of that frame's
> > windows (and also its fringes, btw).
> 
> We can probably refine update_frame then, so it only redraws the windows
> that have changed, which can be recognized thanks to a flag such as
> `redisplay' or a new flag if that one can't be used (under ttys, the
> redraw is really frame-wide so that wouldn't apply, but for GUIs that
> should not be a problem).

This is not needed, because update_frame actually does nothing in this
case: it sees that none of the lines in any window on the selected
frame changed, and does not redraw any of their screen lines.  But it
always redraws the cursor and the fringes.  So we only need to
introduce some infrastructure that would allow us to avoid redrawing
the cursor on GUI frames, when the text surrounding the cursor was not
redrawn.