diff options
Diffstat (limited to 'src/imports')
-rw-r--r-- | src/imports/nativestyle/items/qquickstyleitem.cpp | 8 | ||||
-rw-r--r-- | src/imports/nativestyle/items/qquickstyleitem.h | 2 |
2 files changed, 7 insertions, 3 deletions
diff --git a/src/imports/nativestyle/items/qquickstyleitem.cpp b/src/imports/nativestyle/items/qquickstyleitem.cpp index 5899e3ce..e59439ab 100644 --- a/src/imports/nativestyle/items/qquickstyleitem.cpp +++ b/src/imports/nativestyle/items/qquickstyleitem.cpp @@ -433,8 +433,12 @@ QQuickStyleMargins QQuickStyleItem::layoutMargins() const // than the control(frame) itself, to e.g make room for shadow effects // or focus rects/glow. And this will differ from control to control. The // layoutRect will then inform where the frame of the control is. - const QRect outerRect(QPoint(0, 0), m_styleItemGeometry.implicitSize); - return QQuickStyleMargins(outerRect, m_styleItemGeometry.layoutRect); + QQuickStyleMargins margins; + if (m_styleItemGeometry.layoutRect.isValid()) { + const QRect outerRect(QPoint(0, 0), m_styleItemGeometry.implicitSize); + margins = QQuickStyleMargins(outerRect, m_styleItemGeometry.layoutRect); + } + return margins; } QSize QQuickStyleItem::minimumSize() const diff --git a/src/imports/nativestyle/items/qquickstyleitem.h b/src/imports/nativestyle/items/qquickstyleitem.h index 2c8c9920..4e4180c1 100644 --- a/src/imports/nativestyle/items/qquickstyleitem.h +++ b/src/imports/nativestyle/items/qquickstyleitem.h @@ -144,7 +144,7 @@ struct StyleItemGeometry QSize minimumSize; QSize implicitSize; QRect contentRect; - QRect layoutRect; + QRect layoutRect; //If invalid, there are no layout margins! QMargins ninePatchMargins; qreal focusFrameRadius; }; |