From 5f1af52af8961573bf09ca0958fbd7f4bb42b65f Mon Sep 17 00:00:00 2001
From: Robert Loehning <robert.loehning@nokia.com>
Date: Thu, 24 Jun 2010 21:54:51 +0200
Subject: [PATCH] Fixed unwanted line breaks in tool tips.

Task-number: QTCREATORBUG-1169
---
 src/plugins/cppeditor/cpphoverhandler.cpp | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

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("<table><tr><td valign=middle><nobr>%1</td>"
+            // we need the original width without escape sequences
+            const int width = QFontMetrics(QToolTip::font()).width(m_toolTip);
+            m_toolTip = QString(QLatin1String("<table><tr><td valign=middle width=%2>%1</td>"
                                               "<td><img src=\":/cppeditor/images/f1.png\"></td></tr></table>"))
-                        .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("<nobr>%1")).arg(Qt::escape(m_toolTip));
+        m_toolTip = QString(QLatin1String("<nobr>%1</nobr>")).arg(Qt::escape(m_toolTip));
     }
 }
-- 
GitLab