Speed up Text construction with RichText
authorAndrew den Exter <andrew.den-exter@nokia.com>
Thu, 5 Jul 2012 02:40:13 +0000 (12:40 +1000)
committerQt by Nokia <qt-info@nokia.com>
Mon, 9 Jul 2012 07:05:37 +0000 (09:05 +0200)
Setting the page size to empty can short cut some unnecessary layouts
triggered by QTextDocument/QTextDocumentLayout prior to the Text item
requiring a layout.

This rougly halves the construction time a Text item with RichText.

Task-number: QTBUG-19728
Change-Id: I03e6d293d8e5ac40046aef41171ca5009b718546
Reviewed-by: Martin Jones <martin.jones@nokia.com>
src/quick/items/qquicktext.cpp

index fa56521..c4373e6 100644 (file)
@@ -1200,6 +1200,7 @@ void QQuickTextPrivate::ensureDoc()
     if (!extra.isAllocated() || !extra->doc) {
         Q_Q(QQuickText);
         extra.value().doc = new QQuickTextDocumentWithImageResources(q);
+        extra->doc->setPageSize(QSizeF(0, 0));
         extra->doc->setDocumentMargin(0);
         extra->doc->setBaseUrl(q->baseUrl());
         qmlobject_connect(extra->doc, QQuickTextDocumentWithImageResources, SIGNAL(imagesLoaded()),