aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/imports/nativestyle/items/qquickstyleitem.cpp8
-rw-r--r--src/imports/nativestyle/items/qquickstyleitem.h2
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;
};