diff options
| author | Shawn Rutledge <shawn.rutledge@digia.com> | 2014-03-25 10:11:02 +0100 |
|---|---|---|
| committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-03-25 10:11:02 +0100 |
| commit | cc7c4ba902ae6ab3b5eba80d7075ad8d6183a7ec (patch) | |
| tree | 3533a1dee0103a35e1881fe2e9c7a73f6f2d95de /src/layouts/qquickgridlayoutengine.cpp | |
| parent | 76dd99c448ae69cb12a0465facc5dd743b94e624 (diff) | |
| parent | ff5d39f0a8f34cdb034df703e7b2a769c945e1ed (diff) | |
Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev
Diffstat (limited to 'src/layouts/qquickgridlayoutengine.cpp')
| -rw-r--r-- | src/layouts/qquickgridlayoutengine.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/layouts/qquickgridlayoutengine.cpp b/src/layouts/qquickgridlayoutengine.cpp index 419a81df7..09684b5d3 100644 --- a/src/layouts/qquickgridlayoutengine.cpp +++ b/src/layouts/qquickgridlayoutengine.cpp @@ -142,6 +142,8 @@ static inline void combineImplicitHints(QQuickLayoutAttached *info, Qt::SizeHint explicitly or implicitly set with QQuickLayoutAttached::isExtentExplicitlySet(). This determines if it should be used as a USER or as a HINT value. + Fractional size hints will be ceiled to the closest integer. This is in order to give some + slack when the items are snapped to the pixel grid. | *Minimum* | *Preferred* | *Maximum* | +----------------+----------------------+-----------------------+--------------------------+ @@ -173,12 +175,12 @@ void QQuickGridLayoutItem::effectiveSizeHints_helper(QQuickItem *item, QSizeF *c Q_ASSERT(getter); if (info->isExtentExplicitlySet(Qt::Horizontal, (Qt::SizeHint)i)) - cachedSizeHints[i].setWidth((info->*getter)()); + cachedSizeHints[i].setWidth(qCeil((info->*getter)())); getter = verGetters.call[i]; Q_ASSERT(getter); if (info->isExtentExplicitlySet(Qt::Vertical, (Qt::SizeHint)i)) - cachedSizeHints[i].setHeight((info->*getter)()); + cachedSizeHints[i].setHeight(qCeil((info->*getter)())); } } @@ -213,9 +215,9 @@ void QQuickGridLayoutItem::effectiveSizeHints_helper(QQuickItem *item, QSizeF *c qreal &prefWidth = prefS.rwidth(); qreal &prefHeight = prefS.rheight(); if (prefWidth < 0 && item->implicitWidth() > 0) - prefWidth = item->implicitWidth(); + prefWidth = qCeil(item->implicitWidth()); if (prefHeight < 0 && item->implicitHeight() > 0) - prefHeight = item->implicitHeight(); + prefHeight = qCeil(item->implicitHeight()); // If that fails, make an ultimate fallback to width/height |
