diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2016-09-30 21:23:01 +0200 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2016-10-02 11:24:01 +0000 |
commit | de0212e51e65b578bc941c1004914a0c33c06da7 (patch) | |
tree | 2ecccddc29e5eb9b1ad74a9c2b0371036a47d0eb /src | |
parent | e95dc3b4853c1736aef0ef2cc5248ec0aa46e3ff (diff) |
Fix style inheritance
When unable to find a parent item style on window change, use
the window style as a fallback to avoid a parentless style.
Task-number: QTBUG-52631
Change-Id: I5d31dc72075f06f865f01c3ee2411de6a1485677
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/quickcontrols2/qquickstyleattached.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/quickcontrols2/qquickstyleattached.cpp b/src/quickcontrols2/qquickstyleattached.cpp index cdfa902e..e72abde0 100644 --- a/src/quickcontrols2/qquickstyleattached.cpp +++ b/src/quickcontrols2/qquickstyleattached.cpp @@ -241,10 +241,13 @@ void QQuickStyleAttached::parentStyleChange(QQuickStyleAttached *newParent, QQui void QQuickStyleAttached::itemWindowChanged(QQuickWindow *window) { - Q_UNUSED(window); + QQuickStyleAttached *parentStyle = nullptr; QQuickItem *item = qobject_cast<QQuickItem *>(sender()); if (item) - setParentStyle(findParentStyle(metaObject(), item)); + parentStyle = findParentStyle(metaObject(), item); + if (!parentStyle) + parentStyle = attachedStyle(metaObject(), window); + setParentStyle(parentStyle); } void QQuickStyleAttached::itemParentChanged(QQuickItem *item, QQuickItem *parent) |