aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/gdi/grc.cpp8
-rw-r--r--lib/gdi/grc.h2
-rw-r--r--lib/gui/ewidgetdesktop.cpp4
3 files changed, 13 insertions, 1 deletions
diff --git a/lib/gdi/grc.cpp b/lib/gdi/grc.cpp
index 5ef68332..4b2c5550 100644
--- a/lib/gdi/grc.cpp
+++ b/lib/gdi/grc.cpp
@@ -569,7 +569,7 @@ void gPainter::setCompositing(gCompositingData *comp)
m_rc->submit(o);
}
-void gPainter::end()
+void gPainter::flush()
{
if ( m_dc->islocked() )
return;
@@ -579,6 +579,12 @@ void gPainter::end()
m_rc->submit(o);
}
+void gPainter::end()
+{
+ if ( m_dc->islocked() )
+ return;
+}
+
gDC::gDC()
{
m_spinner_pic = 0;
diff --git a/lib/gdi/grc.h b/lib/gdi/grc.h
index 3b6ed325..5d0106b3 100644
--- a/lib/gdi/grc.h
+++ b/lib/gdi/grc.h
@@ -262,6 +262,8 @@ public:
void flip();
void notify();
void setCompositing(gCompositingData *comp);
+
+ void flush();
};
class gDC: public iObject
diff --git a/lib/gui/ewidgetdesktop.cpp b/lib/gui/ewidgetdesktop.cpp
index fa532359..98bc1f7d 100644
--- a/lib/gui/ewidgetdesktop.cpp
+++ b/lib/gui/ewidgetdesktop.cpp
@@ -332,6 +332,10 @@ void eWidgetDesktop::paint()
if (m_comp_mode == cmBuffered)
{
// redrawComposition(0);
+ } else
+ {
+ gPainter painter(m_screen.m_dc);
+ painter.flush();
}
}