summaryrefslogtreecommitdiffstats
path: root/framework/src/domain/maillistmodel.cpp
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2018-07-23 12:16:08 +0200
committerChristian Mollekopf <chrigi_1@fastmail.fm>2018-07-23 14:28:15 +0200
commite0604f713649186507db37be54cc3aaadcd99663 (patch)
tree66b796b19b3943f0ecdbb0ff0720a6d0bd36ae0f /framework/src/domain/maillistmodel.cpp
parent36b2a1ac66ce66708904870b9458512bbaea4a03 (diff)
downloadkube-e0604f713649186507db37be54cc3aaadcd99663.tar.gz
kube-e0604f713649186507db37be54cc3aaadcd99663.zip
Search view updates
Diffstat (limited to 'framework/src/domain/maillistmodel.cpp')
-rw-r--r--framework/src/domain/maillistmodel.cpp42
1 files changed, 42 insertions, 0 deletions
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
328 return QVariant(); 328 return QVariant();
329} 329}
330 330
331void MailListModel::setSingleMail(const QVariant &variant)
332{
333 using namespace Sink::ApplicationDomain;
334 auto mail = variant.value<Sink::ApplicationDomain::Mail::Ptr>();
335 if (!mail) {
336 mCurrentQueryItem.clear();
337 setSourceModel(nullptr);
338 return;
339 }
340 if (mCurrentQueryItem == mail->identifier()) {
341 return;
342 }
343 mCurrentQueryItem = mail->identifier();
344 Sink::Query query{*mail};
345 query.setFlags(Sink::Query::LiveQuery | Sink::Query::UpdateStatus);
346 query.request<Mail::Subject>();
347 query.request<Mail::Sender>();
348 query.request<Mail::To>();
349 query.request<Mail::Cc>();
350 query.request<Mail::Bcc>();
351 query.request<Mail::Date>();
352 query.request<Mail::Unread>();
353 query.request<Mail::Important>();
354 query.request<Mail::Draft>();
355 query.request<Mail::Folder>();
356 query.request<Mail::Sent>();
357 query.request<Mail::Trash>();
358 query.request<Mail::MimeMessage>();
359 query.request<Mail::FullPayloadAvailable>();
360 mFetchMails = true;
361 mFetchedMails.clear();
362 qDebug() << "Running mail query: " << mail->resourceInstanceIdentifier() << mail->identifier();
363 //Latest mail at the bottom
364 sort(0, Qt::AscendingOrder);
365 runQuery(query);
366}
367
368QVariant MailListModel::singleMail() const
369{
370 return {};
371}
372
331 373
332void MailListModel::setShowDrafts(bool) 374void MailListModel::setShowDrafts(bool)
333{ 375{