diff options
author | axis <qt-info@nokia.com> | 2009-06-08 06:51:51 (GMT) |
---|---|---|
committer | axis <qt-info@nokia.com> | 2009-06-08 06:51:51 (GMT) |
commit | d4257360234a967bfbacde92ec2bb1ac8979b793 (patch) | |
tree | a907ea5fe0d3142ecefce50b79c735554efdf39b /src/plugins | |
parent | 5163d6e1a36f48bf9d8483d3ca23ec730b5188c0 (diff) | |
parent | 3b2b9d727f0fadf607968c73003e7550c8bd0296 (diff) | |
download | Qt-d4257360234a967bfbacde92ec2bb1ac8979b793.zip Qt-d4257360234a967bfbacde92ec2bb1ac8979b793.tar.gz Qt-d4257360234a967bfbacde92ec2bb1ac8979b793.tar.bz2 |
Merge branch '4.5' of git@scm.dev.nokia.troll.no:qt/qt
Conflicts:
tests/auto/qlocalsocket/tst_qlocalsocket.cpp
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp index dba1b51..18754f5 100644 --- a/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp +++ b/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp @@ -202,11 +202,12 @@ void QDirectFBPixmapData::copy(const QPixmapData *data, const QRect &rect) } IDirectFBSurface *src = static_cast<const QDirectFBPixmapData*>(data)->directFBSurface(); - const bool hasAlpha = data->hasAlphaChannel(); - format = (hasAlpha + alpha = data->hasAlphaChannel(); + format = (alpha ? QDirectFBScreen::instance()->alphaPixmapFormat() : QDirectFBScreen::instance()->pixelFormat()); + dfbSurface = screen->createDFBSurface(rect.size(), format, QDirectFBScreen::TrackSurface); if (!dfbSurface) { @@ -215,7 +216,7 @@ void QDirectFBPixmapData::copy(const QPixmapData *data, const QRect &rect) return; } - if (hasAlpha) { + if (alpha) { dfbSurface->Clear(dfbSurface, 0, 0, 0, 0); dfbSurface->SetBlittingFlags(dfbSurface, DSBLIT_BLEND_ALPHACHANNEL); } else { |