aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquicktextinput.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/quick/items/qquicktextinput.cpp')
-rw-r--r--src/quick/items/qquicktextinput.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/quick/items/qquicktextinput.cpp b/src/quick/items/qquicktextinput.cpp
index 9f155f9cf7..7ee1c937c6 100644
--- a/src/quick/items/qquicktextinput.cpp
+++ b/src/quick/items/qquicktextinput.cpp
@@ -2855,6 +2855,18 @@ void QQuickTextInputPrivate::updateLayout()
else
q->setImplicitHeight(height);
+
+ QFontMetricsF fm(font);
+ qreal yoff = 0;
+ if (q->heightValid()) {
+ const qreal itemHeight = q->height();
+ if (vAlign == QQuickTextInput::AlignBottom)
+ yoff = itemHeight - height;
+ else if (vAlign == QQuickTextInput::AlignVCenter)
+ yoff = (itemHeight - height)/2;
+ }
+ q->setBaselineOffset(fm.ascent() + yoff);
+
if (previousSize != contentSize)
emit q->contentSizeChanged();
}