summaryrefslogtreecommitdiff
path: root/src/gui/styles
diff options
context:
space:
mode:
authorSami Merila <sami.merila@nokia.com>2011-07-07 13:08:05 +0300
committerSami Merila <sami.merila@nokia.com>2011-07-07 13:08:05 +0300
commit99aef9769379a74accce481f6290a30bf8024216 (patch)
tree1b3726efb5d6f3f4959fa56115b55d48a82a3825 /src/gui/styles
parentb3e0d76d558d35e40f1c4f1b5b1b14ba79f8eef6 (diff)
downloadqt4-tools-99aef9769379a74accce481f6290a30bf8024216.tar.gz
Regression: Some QMenus are shown completely transparent in Symbian
Fix for menu transparency (QTBUG-16857) unveiled an issue in the QS60Style when drawing QMenu background. Style skips drawing of the menu background, since placeHolder texture for QPalette::Window is not replaced with real background for menus. Therefore, we need to check if the widget's palette is still untouched when deciding whether or not to draw the menu background. Task-number: QTBUG-20255 Reviewed-by: Tomi Vihria
Diffstat (limited to 'src/gui/styles')
-rw-r--r--src/gui/styles/qs60style.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp
index 13157ff328..bb2d701267 100644
--- a/src/gui/styles/qs60style.cpp
+++ b/src/gui/styles/qs60style.cpp
@@ -506,8 +506,10 @@ bool QS60StylePrivate::equalToThemePalette(qint64 cacheKey, QPalette::ColorRole
{
if (!m_themePalette)
return false;
- if (cacheKey == m_themePalette->brush(role).texture().cacheKey())
+ if ((m_placeHolderTexture && (cacheKey == m_placeHolderTexture->cacheKey()))
+ || (cacheKey == m_themePalette->brush(role).texture().cacheKey()))
return true;
+
return false;
}