diff options
author | Gunnar Sletta <gunnar@trolltech.com> | 2009-09-14 06:14:12 (GMT) |
---|---|---|
committer | Gunnar Sletta <gunnar@trolltech.com> | 2009-09-14 06:44:22 (GMT) |
commit | 3aa5fec77b2e1edbcbd1d7735389725076f91cbf (patch) | |
tree | b511c65cc828fcec878a25fbdb4417fe46d20382 /src | |
parent | 97ac103fb5a0139c007c8e2073a7a2cee1423618 (diff) | |
download | Qt-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')
-rw-r--r-- | src/gui/styles/qwindowsxpstyle.cpp | 2 |
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; |