aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/quickcontrols2/qquickiconlabel.cpp3
-rw-r--r--tests/auto/qquickiconlabel/tst_qquickiconlabel.cpp5
2 files changed, 8 insertions, 0 deletions
diff --git a/src/quickcontrols2/qquickiconlabel.cpp b/src/quickcontrols2/qquickiconlabel.cpp
index 6232b48c..37e6060a 100644
--- a/src/quickcontrols2/qquickiconlabel.cpp
+++ b/src/quickcontrols2/qquickiconlabel.cpp
@@ -233,6 +233,7 @@ static QRectF alignedRect(bool mirrored, Qt::Alignment alignment, const QSizeF &
void QQuickIconLabelPrivate::layout()
{
+ Q_Q(QQuickIconLabel);
if (!componentComplete)
return;
@@ -327,6 +328,8 @@ void QQuickIconLabelPrivate::layout()
}
break;
}
+
+ q->setBaselineOffset(label ? label->y() + label->baselineOffset() : 0);
}
static const QQuickItemPrivate::ChangeTypes itemChangeTypes =
diff --git a/tests/auto/qquickiconlabel/tst_qquickiconlabel.cpp b/tests/auto/qquickiconlabel/tst_qquickiconlabel.cpp
index 1f00d8e7..0ecc95c5 100644
--- a/tests/auto/qquickiconlabel/tst_qquickiconlabel.cpp
+++ b/tests/auto/qquickiconlabel/tst_qquickiconlabel.cpp
@@ -216,6 +216,11 @@ void tst_qquickiconlabel::display()
QCOMPARE(label->implicitHeight(), qMax(icon->implicitHeight(), text->implicitHeight()) + verticalPadding);
break;
}
+
+ if (text)
+ QCOMPARE(label->baselineOffset(), text->y() + text->baselineOffset());
+ else
+ QCOMPARE(label->baselineOffset(), 0);
}
}