diff --git a/src/dolphinpart.cpp b/src/dolphinpart.cpp index fc7b74dc0c..81fbacb775 100644 --- a/src/dolphinpart.cpp +++ b/src/dolphinpart.cpp @@ -356,7 +356,7 @@ void DolphinPart::slotRequestItemInfo(const KFileItem& item) if (item.isNull()) { updateStatusBar(); } else { - const QString escapedText = Qt::escape(item.getStatusBarInfo()); + const QString escapedText = Qt::convertFromPlainText(item.getStatusBarInfo()); ReadOnlyPart::setStatusBarText(QString("%1").arg(escapedText)); } } diff --git a/src/statusbar/dolphinstatusbar.cpp b/src/statusbar/dolphinstatusbar.cpp index 1489191720..bff9566420 100644 --- a/src/statusbar/dolphinstatusbar.cpp +++ b/src/statusbar/dolphinstatusbar.cpp @@ -34,6 +34,7 @@ #include #include #include +#include #include #include #include @@ -324,10 +325,17 @@ void DolphinStatusBar::updateLabelText() { const QString text = m_text.isEmpty() ? m_defaultText : m_text; + // Set status bar text and elide it if too long QFontMetrics fontMetrics(m_label->font()); const QString elidedText = fontMetrics.elidedText(text, Qt::ElideRight, m_label->width()); m_label->setText(elidedText); - m_label->setToolTip(text == elidedText ? QString() : text); + + // If the text has been elided, set the original text as tooltip + if (text != elidedText) { + m_label->setToolTip(Qt::convertFromPlainText(text)); + } else { + m_label->setToolTip(QString()); + } } void DolphinStatusBar::slotResetToDefaultText()