Abdelrazak Younes wrote:
Abdelrazak Younes wrote:
Abdelrazak Younes wrote:
Perhaps a genereal rule is: if the whole workarea is to be painted,
use repaint, if not, use update. That should be possible to put into
sourcecode.

Maybe... Let me think a bit about that. I could make a special case in "WorkArea::redraw()".

Does this patch solves the problem?

FYI, this patch has a bad side effect at the end of the document but I'd

This updated patch solves the side effect.

Abdel.
Index: GuiWorkArea.C
===================================================================
--- GuiWorkArea.C       (revision 14234)
+++ GuiWorkArea.C       (working copy)
@@ -515,8 +515,10 @@
 
 void GuiWorkArea::expose(int x, int y, int w, int h)
 {
-//     lyxerr[Debug::GUI] << "expose " << w << 'x' << h
-//             << '+' << x << '+' << y << std::endl;
+       if (x == 0 && y == 0 && w == viewport()->width() && h == 
viewport()->height()) {
+               viewport()->repaint(x, y, w, h);
+               return;
+       }
 
        update(x, y, w, h);
 }

Reply via email to