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!
pgp7b2pwGllG4.pgp
Description: PGP signature