diff options
author | Samuel Rødal <samuel.rodal@nokia.com> | 2011-01-06 12:09:14 (GMT) |
---|---|---|
committer | Samuel Rødal <samuel.rodal@nokia.com> | 2011-01-07 06:56:31 (GMT) |
commit | 84658ec4e650b12dcea6f886b530e66a195465cf (patch) | |
tree | b7283e42837539af8f979cbba14da85e729468b2 | |
parent | e185e5f008f6852bd7a79d74262717c8e377b918 (diff) | |
download | Qt-84658ec4e650b12dcea6f886b530e66a195465cf.zip Qt-84658ec4e650b12dcea6f886b530e66a195465cf.tar.gz Qt-84658ec4e650b12dcea6f886b530e66a195465cf.tar.bz2 |
Fixed bug and performance problem in windowsstyle.
QImage::fill(Qt::transparent) pre-4.8 is a bug, also using Format_ARGB32
is very unoptimal compared to Format_ARGB32_Premultiplied.
Task-number: QTBUG-16439
Reviewed-by: Eskil Abrahamsen Blomfeldt
-rw-r--r-- | src/gui/styles/qwindowsstyle.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gui/styles/qwindowsstyle.cpp b/src/gui/styles/qwindowsstyle.cpp index 32a6d8d..4144b80 100644 --- a/src/gui/styles/qwindowsstyle.cpp +++ b/src/gui/styles/qwindowsstyle.cpp @@ -1395,8 +1395,8 @@ void QWindowsStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, if (!QPixmapCache::find(pixmapName, pixmap)) { int border = size/5; int sqsize = 2*(size/2); - QImage image(sqsize, sqsize, QImage::Format_ARGB32); - image.fill(Qt::transparent); + QImage image(sqsize, sqsize, QImage::Format_ARGB32_Premultiplied); + image.fill(0); QPainter imagePainter(&image); QPolygon a; |