On Sun, Jan 08, 2006 at 04:38:21PM +0100, Michael Gerz wrote: > Abdel wrote: > > >>>About the flickering, I don't know. You could verify with my earlier > >>>published PAINTING debug patch, precisely which rows are getting > >>>updated by the LyX painter. > >> > >>AFAIK, this flickering is not due to lyx internal repainting (i.e to > >>the pixmap) but to the screen update. What Michael sees is a > >>background repaint immediately followed by the pixmap repaint on > >>screen. And this is what my simple patch is fixing (as advised by > >>Jean-Marc) by eliminating the superfluous background repainting. > > > > > >Hum, actually I think there might be another reason. Michael, could > >you please try this patch: > > > >Index: qscreen.C > >=================================================================== > > > >- owner_.getContent()->repaint( > >+ owner_.getContent()->update( > > Abdel, Martin, > > I must confess that I am a bit puzzled. If I understand correctly, it > doesn't matter how clever we are as long as the background is repainted > every time. > > Maybe these results will help you to sort out things: > > 1. With a fresh lyx-devel snapshot (retrieved from CVS yesterday), the > flickering occurs with every character insertion/deletion and text > selection but not when moving the cursor. > 2. With the additional simple QWorkarea.C patch proposed by J-M, I see > no flickering at all (even without Martin's recent patch proposals) > 3. With the above qscreen.C patch (as an alternative to 2.), the > flickering is still there. (It also doesn't help to also replace > "repaint" by "update" in method removeCursor) > > AFAICS, Martin's work is orthogonal to Abdel's. I leave it to you to > draw the final conclusion. Do we loose anything if we change QWorkarea.C? > > Thank you very much for all the efforts in advance! You make people > really happy! > > Michael
Yes, I agree... I think "flicker" and "speed" are orthogonal problems. The fact that cursor movement doesn't produce flicker is because then there literally is no screen update. - Martin
pgp04DDS7kDzb.pgp
Description: PGP signature