From e0604f713649186507db37be54cc3aaadcd99663 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Mon, 23 Jul 2018 12:16:08 +0200 Subject: Search view updates --- framework/src/domain/maillistmodel.cpp | 42 ++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'framework/src/domain/maillistmodel.cpp') diff --git a/framework/src/domain/maillistmodel.cpp b/framework/src/domain/maillistmodel.cpp index 152b4f23..d29e851e 100644 --- a/framework/src/domain/maillistmodel.cpp +++ b/framework/src/domain/maillistmodel.cpp @@ -328,6 +328,48 @@ QVariant MailListModel::mail() const return QVariant(); } +void MailListModel::setSingleMail(const QVariant &variant) +{ + using namespace Sink::ApplicationDomain; + auto mail = variant.value(); + if (!mail) { + mCurrentQueryItem.clear(); + setSourceModel(nullptr); + return; + } + if (mCurrentQueryItem == mail->identifier()) { + return; + } + mCurrentQueryItem = mail->identifier(); + Sink::Query query{*mail}; + query.setFlags(Sink::Query::LiveQuery | Sink::Query::UpdateStatus); + query.request(); + query.request(); + query.request(); + query.request(); + query.request(); + query.request(); + query.request(); + query.request(); + query.request(); + query.request(); + query.request(); + query.request(); + query.request(); + query.request(); + mFetchMails = true; + mFetchedMails.clear(); + qDebug() << "Running mail query: " << mail->resourceInstanceIdentifier() << mail->identifier(); + //Latest mail at the bottom + sort(0, Qt::AscendingOrder); + runQuery(query); +} + +QVariant MailListModel::singleMail() const +{ + return {}; +} + void MailListModel::setShowDrafts(bool) { -- cgit v1.2.3