aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/quicktemplates2/qquickswipedelegate.cpp9
-rw-r--r--src/quicktemplates2/qquickswipedelegate_p.h1
2 files changed, 9 insertions, 1 deletions
diff --git a/src/quicktemplates2/qquickswipedelegate.cpp b/src/quicktemplates2/qquickswipedelegate.cpp
index 9df361ee..ed6da9dc 100644
--- a/src/quicktemplates2/qquickswipedelegate.cpp
+++ b/src/quicktemplates2/qquickswipedelegate.cpp
@@ -1217,12 +1217,19 @@ void QQuickSwipeDelegate::touchEvent(QTouchEvent *event)
event->ignore();
}
+void QQuickSwipeDelegate::componentComplete()
+{
+ Q_D(QQuickSwipeDelegate);
+ QQuickItemDelegate::componentComplete();
+ QQuickSwipePrivate::get(&d->swipe)->reposition(DontAnimatePosition);
+}
+
void QQuickSwipeDelegate::geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry)
{
Q_D(QQuickSwipeDelegate);
QQuickControl::geometryChanged(newGeometry, oldGeometry);
- if (!qFuzzyCompare(newGeometry.width(), oldGeometry.width())) {
+ if (isComponentComplete() && !qFuzzyCompare(newGeometry.width(), oldGeometry.width())) {
QQuickSwipePrivate *swipePrivate = QQuickSwipePrivate::get(&d->swipe);
swipePrivate->reposition(DontAnimatePosition);
}
diff --git a/src/quicktemplates2/qquickswipedelegate_p.h b/src/quicktemplates2/qquickswipedelegate_p.h
index ad840097..53211ccb 100644
--- a/src/quicktemplates2/qquickswipedelegate_p.h
+++ b/src/quicktemplates2/qquickswipedelegate_p.h
@@ -79,6 +79,7 @@ protected:
void mouseReleaseEvent(QMouseEvent *event) override;
void touchEvent(QTouchEvent *event) override;
+ void componentComplete() override;
void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry) override;
QFont defaultFont() const override;