diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2017-01-25 10:20:11 +0100 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2017-01-25 10:20:11 +0100 |
commit | ca2b2e46333181cff8f20125454470a954d9fbc1 (patch) | |
tree | 9f32f55452a054d859684373f7bf1791f3bef99f /examples | |
parent | c7894556b40d7530b97056026281a43be96776a4 (diff) | |
download | sink-ca2b2e46333181cff8f20125454470a954d9fbc1.tar.gz sink-ca2b2e46333181cff8f20125454470a954d9fbc1.zip |
Ignore mails that are marked as deleted.
Diffstat (limited to 'examples')
-rw-r--r-- | examples/imapresource/imapserverproxy.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/examples/imapresource/imapserverproxy.cpp b/examples/imapresource/imapserverproxy.cpp index d5c212d..304a0e8 100644 --- a/examples/imapresource/imapserverproxy.cpp +++ b/examples/imapresource/imapserverproxy.cpp | |||
@@ -331,12 +331,19 @@ KAsync::Job<QVector<qint64>> ImapServerProxy::fetchHeaders(const QString &mailbo | |||
331 | 331 | ||
332 | KAsync::Job<QVector<qint64>> ImapServerProxy::fetchUids(const QString &mailbox) | 332 | KAsync::Job<QVector<qint64>> ImapServerProxy::fetchUids(const QString &mailbox) |
333 | { | 333 | { |
334 | return select(mailbox).then<QVector<qint64>>(search(KIMAP2::Term(KIMAP2::Term::Uid, KIMAP2::ImapSet(1, 0)))); | 334 | auto term = KIMAP2::Term(KIMAP2::Term::Uid, KIMAP2::ImapSet(1, 0)); |
335 | auto notDeleted = KIMAP2::Term(KIMAP2::Term::Deleted); | ||
336 | notDeleted.setNegated(true); | ||
337 | return select(mailbox).then<QVector<qint64>>(search(notDeleted)); | ||
335 | } | 338 | } |
336 | 339 | ||
337 | KAsync::Job<QVector<qint64>> ImapServerProxy::fetchUidsSince(const QString &mailbox, const QDate &since) | 340 | KAsync::Job<QVector<qint64>> ImapServerProxy::fetchUidsSince(const QString &mailbox, const QDate &since) |
338 | { | 341 | { |
339 | return select(mailbox).then<QVector<qint64>>(search(KIMAP2::Term(KIMAP2::Term::Since, since))); | 342 | auto sinceTerm = KIMAP2::Term(KIMAP2::Term::Since, since); |
343 | auto notDeleted = KIMAP2::Term(KIMAP2::Term::Deleted); | ||
344 | notDeleted.setNegated(true); | ||
345 | auto term = KIMAP2::Term(KIMAP2::Term::And, QVector<KIMAP2::Term>() << sinceTerm << notDeleted); | ||
346 | return select(mailbox).then<QVector<qint64>>(search(term)); | ||
340 | } | 347 | } |
341 | 348 | ||
342 | KAsync::Job<void> ImapServerProxy::list(KIMAP2::ListJob::Option option, const std::function<void(const KIMAP2::MailBoxDescriptor &mailboxes, const QList<QByteArray> &flags)> &callback) | 349 | KAsync::Job<void> ImapServerProxy::list(KIMAP2::ListJob::Option option, const std::function<void(const KIMAP2::MailBoxDescriptor &mailboxes, const QList<QByteArray> &flags)> &callback) |