From f30adf43b9331dbf0bb3768fb7694af5bce66c4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Thu, 19 Aug 2010 13:19:31 +0200 Subject: Made GL pixmap backend respect Qt::NoOpaqueDetection flag.. We don't want to do the opaque image scan when the Qt::NoOpaqueDetection flag is set. Reviewed-by: Trond --- src/opengl/qpixmapdata_gl.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/opengl/qpixmapdata_gl.cpp b/src/opengl/qpixmapdata_gl.cpp index 653e805..1efd398 100644 --- a/src/opengl/qpixmapdata_gl.cpp +++ b/src/opengl/qpixmapdata_gl.cpp @@ -367,7 +367,7 @@ void QGLPixmapData::ensureCreated() const } void QGLPixmapData::fromImage(const QImage &image, - Qt::ImageConversionFlags /*flags*/) + Qt::ImageConversionFlags flags) { if (image.size() == QSize(w, h)) setSerialNumber(++qt_gl_pixmap_serial); @@ -381,7 +381,9 @@ void QGLPixmapData::fromImage(const QImage &image, if (qApp->desktop()->depth() == 16) format = QImage::Format_RGB16; - if (image.hasAlphaChannel() && const_cast(image).data_ptr()->checkForAlphaPixels()) + if (image.hasAlphaChannel() + && ((flags & Qt::NoOpaqueDetection) + || const_cast(image).data_ptr()->checkForAlphaPixels())) format = QImage::Format_ARGB32_Premultiplied;; m_source = image.convertToFormat(format); -- cgit v0.12