From 3fc911f652847951f9497754a019179c462dd565 Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Wed, 25 Oct 2017 10:11:29 +0200 Subject: [PATCH] text msg viewer now can pass enclosure url to acc --- src/gui/messagepreviewer.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/gui/messagepreviewer.cpp b/src/gui/messagepreviewer.cpp index 4280271fe..78d59e472 100755 --- a/src/gui/messagepreviewer.cpp +++ b/src/gui/messagepreviewer.cpp @@ -15,6 +15,12 @@ void MessagePreviewer::createConnections() { connect(m_ui->m_txtMessage, &QTextBrowser::anchorClicked, [=](const QUrl& url) { + if (url.toString().startsWith(INTERNAL_URL_PASSATTACHMENT) && + m_root != nullptr && + m_root->getParentServiceRoot()->downloadAttachmentOnMyOwn(url)) { + return; + } + if (!url.isEmpty()) { bool open_externally_now = qApp->settings()->value(GROUP(Browser), SETTING(Browser::OpenLinksInExternalBrowserRightAway)).toBool(); @@ -188,7 +194,16 @@ QString MessagePreviewer::prepareHtmlForMessage(const Message& message) { html += QString("[url] %1
").arg(message.m_url); foreach (const Enclosure& enc, message.m_enclosures) { - html += QString("[%2] %1
").arg(enc.m_url, enc.m_mimeType); + QString enc_url; + + if (!enc.m_url.contains(QRegularExpression(QSL("^(http|ftp|\\/)")))) { + enc_url = QString(INTERNAL_URL_PASSATTACHMENT) + QL1S("/?") + enc.m_url; + } + else { + enc_url = enc.m_url; + } + + html += QString("[%2] %1
").arg(enc_url, enc.m_mimeType); } int offset = 0;