forked from qt-creator/qt-creator
Utils: fix likelyContainsLink for markdown
This allows us to also port the link in the resource tooltip to markdown. Change-Id: Iec0e19ff68db76290139e457694485222f0a38f3 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -133,9 +133,13 @@ TextTip::TextTip(QWidget *parent) : TipLabel(parent)
|
||||
setWindowOpacity(style()->styleHint(QStyle::SH_ToolTipLabel_Opacity, nullptr, this) / 255.0);
|
||||
}
|
||||
|
||||
static bool likelyContainsLink(const QString &s)
|
||||
static bool likelyContainsLink(const QString &s, const Qt::TextFormat &format)
|
||||
{
|
||||
return s.contains(QLatin1String("href"), Qt::CaseInsensitive);
|
||||
if (s.contains(QLatin1String("href"), Qt::CaseInsensitive))
|
||||
return true;
|
||||
if (format == Qt::MarkdownText)
|
||||
return s.contains("](");
|
||||
return false;
|
||||
}
|
||||
|
||||
void TextTip::setContent(const QVariant &content)
|
||||
@@ -148,13 +152,13 @@ void TextTip::setContent(const QVariant &content)
|
||||
m_format = item.second;
|
||||
}
|
||||
|
||||
bool containsLink = likelyContainsLink(m_text);
|
||||
bool containsLink = likelyContainsLink(m_text, m_format);
|
||||
setOpenExternalLinks(containsLink);
|
||||
}
|
||||
|
||||
bool TextTip::isInteractive() const
|
||||
{
|
||||
return likelyContainsLink(m_text);
|
||||
return likelyContainsLink(m_text, m_format);
|
||||
}
|
||||
|
||||
void TextTip::configure(const QPoint &pos)
|
||||
|
||||
@@ -181,9 +181,7 @@ QString ResourcePreviewHoverHandler::makeTooltip() const
|
||||
const Utils::MimeType mimeType = Utils::mimeTypeForFile(m_resPath);
|
||||
if (mimeType.name().startsWith("image", Qt::CaseInsensitive))
|
||||
ret += QString(" \n").arg(m_resPath);
|
||||
|
||||
ret += QString("<a href=\"file:///%1\">%2</a>")
|
||||
.arg(m_resPath, QDir::toNativeSeparators(m_resPath));
|
||||
ret += QString("[%1](%2)").arg(QDir::toNativeSeparators(m_resPath), m_resPath);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user