feat: IMAP sync incremental + Account Setup Wizard + robust FETCH parser
- ImapSynchronizer::syncFolder(): detecta eliminados (UIDs locales no en servidor), fetch nuevos (sinceUid), actualiza flags (FLAGS batch) - fetchAllUids(): SELECT + SEARCH ALL para lista completa UIDs servidor - parseAndUpdateFlags(): FETCH FLAGS en lotes 100, update DB si cambió read/flagged - AccountSetupDialog: integra ConnectionWizard para IMAP/POP3 con test de conexión real - IMAP FETCH parser robusto: logging respuesta servidor + fallback UID-by-UID - Fix: FETCH failed logging muestra first/last UID + respuesta truncada
This commit is contained in:
+14
-3
@@ -42,6 +42,14 @@ private slots:
|
||||
void onProgressChanged(int percent);
|
||||
void onStatusMessage(const QString &msg);
|
||||
|
||||
// Slots for embedded compose view
|
||||
void onEmbeddedSendRequested(const QString &to, const QString &cc, const QString &bcc,
|
||||
const QString &subject, const QString &body,
|
||||
const QDateTime &scheduleTime,
|
||||
const QString &fromAddress,
|
||||
const QStringList &attachmentPaths);
|
||||
void onEmbeddedDiscardRequested();
|
||||
void onEmbeddedDetachRequested(QWidget *widget);
|
||||
private:
|
||||
void setupUI();
|
||||
void setupSidebar();
|
||||
@@ -68,6 +76,9 @@ private:
|
||||
QTreeView *m_folderTree;
|
||||
MailListView *m_mailListView;
|
||||
ReaderView *m_emailViewer;
|
||||
QStackedWidget *m_viewerStack;
|
||||
QWidget *m_placeholderWidget;
|
||||
ComposeView *m_embeddedComposeView;
|
||||
|
||||
// Other pages
|
||||
ComposeView *m_composeView;
|
||||
@@ -78,12 +89,12 @@ private:
|
||||
// Services & Models
|
||||
FolderListModel *m_folderModel;
|
||||
EmailListModel *m_emailModel;
|
||||
AccountService *m_accountService;
|
||||
MailService *m_mailService;
|
||||
AccountService *m_accountService = nullptr;
|
||||
MailService *m_mailService = nullptr;
|
||||
|
||||
QToolBar *m_toolBar;
|
||||
int m_currentFolderId;
|
||||
int m_currentMailId;
|
||||
|
||||
QProgressBar *m_progressBar;
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user