aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMitch Curtis <mitch.curtis@qt.io>2016-08-23 16:33:21 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2016-09-02 14:40:34 +0000
commit33904b63ce9971efc3763a0048a084ec3324dfc4 (patch)
treee2ad51da97a0a904bda0304659bdc618e95ed877 /src
parentc8372be0b96b1aaa9f8cb8737f8d4a662252d446 (diff)
Material: ignore Material.background unless explicitly set
Doing Material.background: "red" in an ApplicationWindow shouldn't affect the background color of e.g. a Button. The background property should still propagate though, so we change buttonColor() to ignore the value of background if it wasn't explicitly set. Change-Id: I09b4df142935b19de35a77bd68c6c062417b74fc Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/imports/controls/material/qquickmaterialstyle.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/imports/controls/material/qquickmaterialstyle.cpp b/src/imports/controls/material/qquickmaterialstyle.cpp
index bc53695a..8562cdbb 100644
--- a/src/imports/controls/material/qquickmaterialstyle.cpp
+++ b/src/imports/controls/material/qquickmaterialstyle.cpp
@@ -716,6 +716,7 @@ void QQuickMaterialStyle::setBackground(const QVariant &var)
m_background = background;
propagateBackground();
emit backgroundChanged();
+ emit paletteChanged();
}
void QQuickMaterialStyle::inheritBackground(uint background, bool custom, bool has)
@@ -865,7 +866,7 @@ QColor QQuickMaterialStyle::buttonColor(bool highlighted, bool pressed, bool hov
QColor color = Qt::transparent;
- if (m_hasBackground) {
+ if (m_explicitBackground) {
color = backgroundColor(shade);
} else if (highlighted) {
color = accentColor(shade);