X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fgui%2Fewidgetdesktop.cpp;h=98bc1f7dce08334776d40e6002ec6968d21c3ef0;hp=05b4ec4db07979d612875f10e306b0038dad335c;hb=0a62b65175152c42976d4cb04fb7026d9f910915;hpb=84007236ce796615a8e74432aad110164b23b8ec diff --git a/lib/gui/ewidgetdesktop.cpp b/lib/gui/ewidgetdesktop.cpp index 05b4ec4..98bc1f7 100644 --- a/lib/gui/ewidgetdesktop.cpp +++ b/lib/gui/ewidgetdesktop.cpp @@ -145,6 +145,9 @@ void eWidgetDesktop::recalcClipRegions(eWidget *root) createBufferForWidget(root, 0); comp = root->m_comp_buffer[i]; /* it might have changed. */ + + if (!comp) + continue; /* WAIT, don't we need to invalidate,whatever */ /* CHECKME: don't we need to recalculate everything? after all, our buffer has changed and is likely to be cleared */ gRegion visible_before = root->m_visible_with_childs; @@ -329,6 +332,10 @@ void eWidgetDesktop::paint() if (m_comp_mode == cmBuffered) { // redrawComposition(0); + } else + { + gPainter painter(m_screen.m_dc); + painter.flush(); } }