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