aboutsummaryrefslogtreecommitdiffstats
path: root/src/quickcontrols2/qquickiconlabel.cpp
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2017-04-10 09:05:45 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2017-04-10 09:31:55 +0000
commitbe057581cf370592eeb4786c4f786749adc23d35 (patch)
tree940eef9ac9a6c93fb4386ebb7b3173b96cfec5ea /src/quickcontrols2/qquickiconlabel.cpp
parent762a88cf351be212e7b0e01cb8b93c4b1479e880 (diff)
QQuickIconLabel: don't post-pone implicit size calculation
QQuickText is optimized to avoid unnecessary implicit size calcuation. It can make a big difference whether QQuickText::implicitWidth() is called while the text element is complete. "Bind" to QQuickText's implicit size directly to let it apply the optimization tricks. This way QQuickTextPrivate::setupTextLayout() is called only once during the construction of QQuickIconLabel. Only layouting is post-poned until component completion anymore. Change-Id: Ide6bbddadf7d36ab908064b8545e1b4ed9474455 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src/quickcontrols2/qquickiconlabel.cpp')
-rw-r--r--src/quickcontrols2/qquickiconlabel.cpp4
1 files changed, 0 insertions, 4 deletions
diff --git a/src/quickcontrols2/qquickiconlabel.cpp b/src/quickcontrols2/qquickiconlabel.cpp
index 4ce89edd..793bb255 100644
--- a/src/quickcontrols2/qquickiconlabel.cpp
+++ b/src/quickcontrols2/qquickiconlabel.cpp
@@ -57,9 +57,6 @@ QQuickIconLabelPrivate::QQuickIconLabelPrivate()
void QQuickIconLabelPrivate::updateImplicitSize()
{
Q_Q(QQuickIconLabel);
- if (!componentComplete)
- return;
-
const bool showIcon = icon && display != QQuickIconLabel::TextOnly;
const bool showText = label && display != QQuickIconLabel::IconOnly;
const qreal horizontalPadding = leftPadding + rightPadding;
@@ -389,7 +386,6 @@ void QQuickIconLabel::componentComplete()
{
Q_D(QQuickIconLabel);
QQuickItem::componentComplete();
- d->updateImplicitSize();
d->layout();
}