diff options
| author | Felix Domke <tmbinc@elitedvb.net> | 2006-05-10 23:20:47 +0000 |
|---|---|---|
| committer | Felix Domke <tmbinc@elitedvb.net> | 2006-05-10 23:20:47 +0000 |
| commit | e9f1c31e51f2c2cb55bb01788242153eee3e7734 (patch) | |
| tree | 281401044d8e03cf58256f244cf5a757cbdc8502 /lib/gui/ewidgetdesktop.cpp | |
| parent | 9f8ba87f60249139f18f10ab4ba84b187a97da33 (diff) | |
| download | enigma2-e9f1c31e51f2c2cb55bb01788242153eee3e7734.tar.gz enigma2-e9f1c31e51f2c2cb55bb01788242153eee3e7734.zip | |
don't merge pixmaps when it's not required
Diffstat (limited to 'lib/gui/ewidgetdesktop.cpp')
| -rw-r--r-- | lib/gui/ewidgetdesktop.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/gui/ewidgetdesktop.cpp b/lib/gui/ewidgetdesktop.cpp index 9e092203..eaaa81c8 100644 --- a/lib/gui/ewidgetdesktop.cpp +++ b/lib/gui/ewidgetdesktop.cpp @@ -299,14 +299,17 @@ void eWidgetDesktop::makeCompatiblePixmap(gPixmap &pm) return; } - ePtr<gDC> pixmap_dc = new gDC(&pm); - gPainter pixmap_painter(pixmap_dc); - ePtr<gPixmap> target_pixmap; m_screen.m_dc->getPixmap(target_pixmap); assert(target_pixmap); + if (target_pixmap->surface && target_pixmap->surface->bpp > 8) + return; + + ePtr<gDC> pixmap_dc = new gDC(&pm); + gPainter pixmap_painter(pixmap_dc); + pixmap_painter.mergePalette(target_pixmap); } |
