- invalidate background on startup
authorFelix Domke <tmbinc@elitedvb.net>
Fri, 20 May 2005 20:51:29 +0000 (20:51 +0000)
committerFelix Domke <tmbinc@elitedvb.net>
Fri, 20 May 2005 20:51:29 +0000 (20:51 +0000)
lib/gui/ewidgetdesktop.cpp

index 24fb334..3a60a26 100644 (file)
@@ -123,15 +123,21 @@ void eWidgetDesktop::makeCompatiblePixmap(gPixmap &pm)
                eWarning("eWidgetDesktop: no DC to make pixmap compatible with!");
                return;
        }
                eWarning("eWidgetDesktop: no DC to make pixmap compatible with!");
                return;
        }
-       eDebug("painter..");
-       gPainter painter(m_dc);
-       eDebug("merge!");
-       painter.mergePalette(&pm);
-       eDebug("gone!");
+
+       ePtr<gDC> pixmap_dc = new gDC(&pm);
+       gPainter pixmap_painter(pixmap_dc);
+       
+       ePtr<gPixmap> target_pixmap;
+       m_dc->getPixmap(target_pixmap);
+       
+       assert(target_pixmap);
+       
+       pixmap_painter.mergePalette(target_pixmap);
 }
 
 eWidgetDesktop::eWidgetDesktop(eSize size): m_screen_size(size), m_mainloop(0), m_timer(0)
 {
 }
 
 eWidgetDesktop::eWidgetDesktop(eSize size): m_screen_size(size), m_mainloop(0), m_timer(0)
 {
+       m_dirty_region = gRegion(eRect(ePoint(0, 0), m_screen_size));
 }
 
 eWidgetDesktop::~eWidgetDesktop()
 }
 
 eWidgetDesktop::~eWidgetDesktop()