diff options
author | Mitch Curtis <mitch.curtis@qt.io> | 2016-08-23 16:33:21 +0200 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2016-09-02 14:40:34 +0000 |
commit | 33904b63ce9971efc3763a0048a084ec3324dfc4 (patch) | |
tree | e2ad51da97a0a904bda0304659bdc618e95ed877 /src | |
parent | c8372be0b96b1aaa9f8cb8737f8d4a662252d446 (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.cpp | 3 |
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); |