Don't fix up x/y while initializing
authorAlan Alpert <aalpert@blackberry.com>
Fri, 26 Apr 2013 23:27:21 +0000 (16:27 -0700)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Thu, 9 May 2013 22:58:39 +0000 (00:58 +0200)
Any initial values leading to content outside the Flickable are likely
to be explicitly set as initial property values. "fixing" them up will
lead to just ignoring them.

Task-number: QTBUG-30837
Change-Id: I3b2593605f16d73ba008bc6a6f067ab6020bcbe4
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
src/quick/items/qquickflickable.cpp

index dd73578..7913cbc 100644 (file)
@@ -422,12 +422,16 @@ void QQuickFlickablePrivate::fixupX_callback(void *data)
 void QQuickFlickablePrivate::fixupX()
 {
     Q_Q(QQuickFlickable);
+    if (!q->isComponentComplete())
+        return; //Do not fixup from initialization values
     fixup(hData, q->minXExtent(), q->maxXExtent());
 }
 
 void QQuickFlickablePrivate::fixupY()
 {
     Q_Q(QQuickFlickable);
+    if (!q->isComponentComplete())
+        return; //Do not fixup from initialization values
     fixup(vData, q->minYExtent(), q->maxYExtent());
 }