On Wed, Nov 01, 2006 at 05:44:52PM +0100, Abdelrazak Younes wrote:
> Martin Vermeer wrote:
> >
> >I'm not sure your description is quite right... the problem is the 
> >statement
> >
> >     buffer_view_->updateMetrics(false);
> >
> >which you added in revision 14456. It repaints the whole screen every time 
> >redraw is
> >called -- which happens even when only a row or para repaint ought to be 
> >done
> >(elsewhere the updateMetrics call takes the singlepar argument).
> >
> >Can this patch be somehow reverted? I.e., store state in 
> >buffer_view_->needsRedraw etc.
> >I expect Bennett will see a spectacular speedup then...
> 
> It might very well be my fault indeed. We changed the metrics subsystem 
> quite a lot and, IIRC, this change was needed at that time to avoid a 
> crash because of incomplete coordcache. Now that the situation is 
> stabilized WRT the coordcache I think it make sense to re-enable the 
> single row/par repaint.
> 
> I look forward to a patch from you ;-)

Don't hold your breath... real life has a solid grip on me.

...and I didn't break this ;-/

- Martin

PS just for your edification, disable the updateMetrics call in
WorkArea::redraw and see how the non-cursor paragraphs/rows are whited
out when you type a character. Where is this whiting-out being done?
Get rid of it.

BTW this updateMetrics call is a _really_ bad idea. It doesn't belong
there at all!

Attachment: pgp7b2pwGllG4.pgp
Description: PGP signature

Reply via email to