diff --git a/src/plugins/cppeditor/cpphoverhandler.cpp b/src/plugins/cppeditor/cpphoverhandler.cpp
index 2b691e6be98..894e27a72ec 100644
--- a/src/plugins/cppeditor/cpphoverhandler.cpp
+++ b/src/plugins/cppeditor/cpphoverhandler.cpp
@@ -397,12 +397,14 @@ void CppHoverHandler::updateHelpIdAndTooltip(TextEditor::ITextEditor *editor, in
if (!m_helpId.isEmpty() && !helpLinks.isEmpty()) {
if (showF1) {
- m_toolTip = QString(QLatin1String("
| %1 | "
+ // we need the original width without escape sequences
+ const int width = QFontMetrics(QToolTip::font()).width(m_toolTip);
+ m_toolTip = QString(QLatin1String("| %1 | "
" |
"))
- .arg(Qt::escape(m_toolTip));
+ .arg(Qt::escape(m_toolTip)).arg(width);
}
editor->setContextHelpId(m_helpId);
} else if (!m_toolTip.isEmpty() && Qt::mightBeRichText(m_toolTip)) {
- m_toolTip = QString(QLatin1String("%1")).arg(Qt::escape(m_toolTip));
+ m_toolTip = QString(QLatin1String("%1")).arg(Qt::escape(m_toolTip));
}
}