This commit is contained in:
Martin Rotter 2016-07-27 10:36:46 +02:00
parent 1d8f5f860d
commit 1e5d458bc2
5 changed files with 34 additions and 13 deletions

File diff suppressed because one or more lines are too long

View File

@ -1,3 +1,9 @@
3.3.3
—————
Added:
▪ Message viewer now displays thumbnails of image message attachments. (issue #39)
3.3.2
—————

View File

@ -87,22 +87,30 @@ void WebViewer::loadMessages(const QList<Message> &messages) {
foreach (const Message &message, messages) {
QString enclosures;
QString enclosure_images;
foreach (const Enclosure &enclosure, message.m_enclosures) {
enclosures += skin.m_enclosureMarkup.arg(enclosure.m_url, tr("Attachment"), enclosure.m_mimeType);
if (enclosure.m_mimeType.startsWith(QSL("image/"))) {
// Add thumbnail image.
enclosure_images += skin.m_enclosureImageMarkup.arg(enclosure.m_url, enclosure.m_mimeType) ;
}
}
messages_layout.append(single_message_layout.arg(message.m_title,
tr("Written by ") + (message.m_author.isEmpty() ?
tr("unknown author") :
message.m_author),
message.m_url,
message.m_contents,
message.m_created.toString(Qt::DefaultLocaleShortDate),
enclosures,
message.m_isRead ? "mark-unread" : "mark-read",
message.m_isImportant ? "mark-unstarred" : "mark-starred",
QString::number(message.m_id)));
messages_layout.append(single_message_layout
.arg(message.m_title,
tr("Written by ") + (message.m_author.isEmpty() ?
tr("unknown author") :
message.m_author),
message.m_url,
message.m_contents,
message.m_created.toString(Qt::DefaultLocaleShortDate),
enclosures,
message.m_isRead ? "mark-unread" : "mark-read",
message.m_isImportant ? "mark-unstarred" : "mark-starred",
QString::number(message.m_id))
.arg(enclosure_images));
}
m_messageContents = skin.m_layoutMarkupWrapper.arg(messages.size() == 1 ? messages.at(0).m_title : tr("Newspaper view"),

View File

@ -136,6 +136,11 @@ Skin SkinFactory::skinInfo(const QString &skin_name, bool *ok) const {
skin.m_layoutMarkupWrapper = QByteArray::fromBase64(skin.m_layoutMarkupWrapper.toLocal8Bit());
skin.m_layoutMarkupWrapper = skin.m_layoutMarkupWrapper.replace(QSL("##"), APP_SKIN_PATH + QL1S("/") + base_folder);
// Obtain enclosure image layout
skin.m_enclosureImageMarkup = skin_node.namedItem(QSL("enclosure_image")).toElement().text();
skin.m_enclosureImageMarkup = QByteArray::fromBase64(skin.m_enclosureImageMarkup.toLocal8Bit());
skin.m_enclosureImageMarkup = skin.m_enclosureImageMarkup.replace(QSL("##"), APP_SKIN_PATH + QL1S("/") + base_folder);
// Obtain layout markup.
skin.m_layoutMarkup = skin_node.namedItem(QSL("markup")).toElement().text();
skin.m_layoutMarkup = QByteArray::fromBase64(skin.m_layoutMarkup.toLocal8Bit());

View File

@ -33,6 +33,7 @@ struct Skin {
QString m_version;
QString m_rawData;
QString m_layoutMarkupWrapper;
QString m_enclosureImageMarkup;
QString m_layoutMarkup;
QString m_enclosureMarkup;
};