aboutsummaryrefslogtreecommitdiff
path: root/lib/gui/ewidgetdesktop.cpp
diff options
context:
space:
mode:
authorFelix Domke <tmbinc@elitedvb.net>2006-05-10 23:20:47 +0000
committerFelix Domke <tmbinc@elitedvb.net>2006-05-10 23:20:47 +0000
commite9f1c31e51f2c2cb55bb01788242153eee3e7734 (patch)
tree281401044d8e03cf58256f244cf5a757cbdc8502 /lib/gui/ewidgetdesktop.cpp
parent9f8ba87f60249139f18f10ab4ba84b187a97da33 (diff)
downloadenigma2-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.cpp9
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);
}