From d8c8057c03fc906f3bee0905246ca18351bd9e1b Mon Sep 17 00:00:00 2001 From: Julien Brianceau Date: Fri, 19 Oct 2012 11:35:43 +0200 Subject: qpa: Fix drawPixmap rendering using CompositionMode_Source in DirectFB MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I646bc7054e1aa17dca4f54ddd3d2668c173773d4 Reviewed-by: Samuel Rødal Reviewed-by: Jørgen Lind --- src/plugins/platforms/directfb/qdirectfbblitter.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/plugins/platforms/directfb') diff --git a/src/plugins/platforms/directfb/qdirectfbblitter.cpp b/src/plugins/platforms/directfb/qdirectfbblitter.cpp index 428ee72f9e..cac250fb9d 100644 --- a/src/plugins/platforms/directfb/qdirectfbblitter.cpp +++ b/src/plugins/platforms/directfb/qdirectfbblitter.cpp @@ -197,7 +197,9 @@ void QDirectFbBlitter::drawPixmapOpacity(const QRectF &rect, const QPixmap &pixm m_surface->SetBlittingFlags(m_surface.data(), DFBSurfaceBlittingFlags(blittingFlags)); m_surface->SetPorterDuff(m_surface.data(), porterDuff); - m_surface->SetDstBlendFunction(m_surface.data(), DSBF_INVSRCALPHA); + + if (cmode == QPainter::CompositionMode_SourceOver) + m_surface->SetDstBlendFunction(m_surface.data(), DSBF_INVSRCALPHA); if ((sRect.w == dRect.w) && (sRect.h == dRect.h)) result = m_surface->Blit(m_surface.data(), s, &sRect, dRect.x, dRect.y); -- cgit v1.2.3