aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports/layouts
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-01-26 00:34:21 +0100
committerLiang Qi <liang.qi@qt.io>2017-01-26 00:34:21 +0100
commit0076c44d3993f377ad6417d3bb08109b608dfbd2 (patch)
tree498a1f3d0997da8e3959e6a1d47071d56a6ce900 /src/imports/layouts
parent5f0eab2df3c82a71f70ea5a6535541fa786c6a78 (diff)
parent9aed949bb99b9bf328322457a02ad1a9fb330f2d (diff)
Merge remote-tracking branch 'origin/5.8' into dev
Conflicts: src/quick/util/qquickutilmodule.cpp tools/qmllint/main.cpp Change-Id: Ic2283f88c293ca7fc776de3e83eb4c7812309d8a
Diffstat (limited to 'src/imports/layouts')
-rw-r--r--src/imports/layouts/qquickstacklayout.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/imports/layouts/qquickstacklayout.cpp b/src/imports/layouts/qquickstacklayout.cpp
index a223dd0374..0bfe63816d 100644
--- a/src/imports/layouts/qquickstacklayout.cpp
+++ b/src/imports/layouts/qquickstacklayout.cpp
@@ -307,7 +307,11 @@ void QQuickStackLayout::rearrange(const QSizeF &newSize)
QQuickItem *item = itemAt(d->currentIndex);
Q_ASSERT(item);
item->setPosition(QPointF(0,0)); // ### respect alignment?
- item->setSize(newSize.expandedTo(hints.min()).boundedTo(hints.max()));
+ const QSizeF oldSize(item->width(), item->height());
+ const QSizeF effectiveNewSize = newSize.expandedTo(hints.min()).boundedTo(hints.max());
+ item->setSize(effectiveNewSize);
+ if (effectiveNewSize == oldSize)
+ item->polish();
QQuickLayout::rearrange(newSize);
}