From 742f497bae9cd716788d554ad3f42eb158cb8c69 Mon Sep 17 00:00:00 2001 From: Matthias Rauter Date: Fri, 3 Feb 2023 08:09:15 +0100 Subject: [PATCH] Use plain text to calculate expire time of tooltips Fixes: QTBUG-110735 Change-Id: I3f0db04f3be9707167f7c19507ebbb5a9c4466d2 Reviewed-by: Shawn Rutledge (cherry picked from commit 285c326ef4070b768f7a6ef7a38fb2c2976fe572) Reviewed-by: Qt Cherry-pick Bot --- src/widgets/kernel/qtooltip.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/widgets/kernel/qtooltip.cpp b/src/widgets/kernel/qtooltip.cpp index 3166613199b..2c68b029b01 100644 --- a/src/widgets/kernel/qtooltip.cpp +++ b/src/widgets/kernel/qtooltip.cpp @@ -157,7 +157,9 @@ QTipLabel::QTipLabel(const QString &text, const QPoint &pos, QWidget *w, int mse void QTipLabel::restartExpireTimer(int msecDisplayTime) { - int time = 10000 + 40 * qMax(0, text().size()-100); + Q_D(const QLabel); + const qsizetype textLength = d->needTextControl() ? d->control->toPlainText().size() : text().size(); + qsizetype time = 10000 + 40 * qMax(0, textLength - 100); if (msecDisplayTime > 0) time = msecDisplayTime; expireTimer.start(time, this);