Subject: Re: bug#13399: 24.3.50; Word-wrap can't wrap at zero-width space U-200B

From: Eli Zaretskii <[email-masked]>
Date: Sat, 12 Jan 2013 10:28:15 +0200

> From: Stefan Monnier <[email-masked]>
> Cc: [email-masked],  [email-masked]
> Date: Fri, 11 Jan 2013 17:47:46 -0500
> 
> >> > How could `posn-at-point' possibly work if the display is not up to
> >> > date?
> >> Actually, it does not require the display to be up-to-date, only the
> >> glyph-matrices.
> > No, you cannot have up-to-date glyph matrices without triggering
> > redisplay.
> 
> Looks like I misunderstood, indeed.  This said, I don't see why we
> couldn't provide ways to update the glyph matrices while leaving the
> display update for later.

Generating up-to-date matrices without reflecting them on the glass is
easy: just skip the calls to update_frame in redisplay_internal.

But why would we need that?  Most everything we need to know about
display is already tracked by the display iterator, so available even
without generating glyphs, and that's what the move_it_* functions do.
These function do their job by traversing only small portions of the
buffer, just large enough for the job at hand to be done.  OTOH,
updating the entire glyph matrices of all of the windows on all of the
frames AFAIR takes the lion's share of time used by redisplay, so we
might as well force a complete redisplay when we do need complete
up-to-date matrices.