summaryrefslogtreecommitdiffstats
path: root/src/gui/styles
diff options
context:
space:
mode:
authorGunnar Sletta <gunnar@trolltech.com>2009-09-14 06:14:12 (GMT)
committerGunnar Sletta <gunnar@trolltech.com>2009-09-14 06:44:22 (GMT)
commit3aa5fec77b2e1edbcbd1d7735389725076f91cbf (patch)
treeb511c65cc828fcec878a25fbdb4417fe46d20382 /src/gui/styles
parent97ac103fb5a0139c007c8e2073a7a2cee1423618 (diff)
downloadQt-3aa5fec77b2e1edbcbd1d7735389725076f91cbf.zip
Qt-3aa5fec77b2e1edbcbd1d7735389725076f91cbf.tar.gz
Qt-3aa5fec77b2e1edbcbd1d7735389725076f91cbf.tar.bz2
Fixed groupbox drawing on xp when hitting the fallback code.
When swapping the alphachannel we need to make sure we create proper premultiplied pixels. When setting alpha to 0, that means also setting the other pixel values to 0. This bug was made visible by the gl graphics system. Reviewed-by: MariusSO
Diffstat (limited to 'src/gui/styles')
-rw-r--r--src/gui/styles/qwindowsxpstyle.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gui/styles/qwindowsxpstyle.cpp b/src/gui/styles/qwindowsxpstyle.cpp
index 5645950..0dc1832 100644
--- a/src/gui/styles/qwindowsxpstyle.cpp
+++ b/src/gui/styles/qwindowsxpstyle.cpp
@@ -586,7 +586,7 @@ bool QWindowsXPStylePrivate::swapAlphaChannel(const QRect &rect, bool allPixels)
}
register unsigned int alphaValue = (*buffer) & 0xFF000000;
if (alphaValue == 0xFF000000) {
- *buffer &= 0x00FFFFFF;
+ *buffer = 0;
valueChange = true;
} else if (alphaValue == 0) {
*buffer |= 0xFF000000;