feat: comprehensive Wino Mail updates
- ReaderView: complete rewrite with CSS styling, headers, attachments, zoom, find, dark mode, image blocking - Categories: DAO + UI tree widget with colors, nested categories, assignment - Rules engine: DAO + evaluation + actions (move, mark read, flag, delete, category, forward) - Templates: DAO + editor + manager with variables support - Signatures: DAO + manager + auto-per-account + manual selector in compose - ComposeView: signature combo, template selector, auto-signature on new email - MainWindow: frameless with rounded corners, 1px border, resize from edges, no status bar - Database: new tables (Category, MailCategory, Rule, Template, Signature) with indexes
This commit is contained in:
@@ -406,13 +406,13 @@ void MailService::fetchMails(const QString &accountId, const QString &folderId)
|
||||
QObject::connect(sync, SIGNAL(progressChanged(int)), this, SIGNAL(progressChanged(int)), Qt::QueuedConnection);
|
||||
QObject::connect(sync, SIGNAL(statusMessage(const QString&)), this, SIGNAL(statusMessage(const QString&)), Qt::QueuedConnection);
|
||||
|
||||
QFuture<QVector<MailItem>> future = QtConcurrent::run([=]() {
|
||||
QFuture<QVector<MailItem>> future = QtConcurrent::run([this, sync, folderId]() {
|
||||
// SinceUid = 0 for full sync; could be stored per folder but omitted for simplicity
|
||||
return sync->fetchMailItems(folderId, 0);
|
||||
});
|
||||
|
||||
QFutureWatcher<QVector<MailItem>> *watcher = new QFutureWatcher<QVector<MailItem>>(this);
|
||||
QObject::connect(watcher, &QFutureWatcher<QVector<MailItem>>::finished, this, [=]() {
|
||||
QObject::connect(watcher, &QFutureWatcher<QVector<MailItem>>::finished, this, [this, sync, watcher, accountId, folderId]() {
|
||||
// Disconnect progress signals
|
||||
QObject::disconnect(sync, SIGNAL(progressChanged(int)), this, SIGNAL(progressChanged(int)));
|
||||
QObject::disconnect(sync, SIGNAL(statusMessage(const QString&)), this, SIGNAL(statusMessage(const QString&)));
|
||||
@@ -504,4 +504,3 @@ void MailService::markAsRead(const QString &mailItemId, bool read)
|
||||
emit mailReadStateChanged(mailItemId, read);
|
||||
}
|
||||
|
||||
#include "mailservice.moc"
|
||||
|
||||
Reference in New Issue
Block a user