Commit Graph
15 Commits
Author SHA1 Message Date
javier 0bb8738607 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
2026-08-23 14:49:58 +02:00
javier 2a7142be1e fix: IMAP FETCH timeout and tagged response detection
- sendCommandWaitBytes(): check for tagged response (OK/NO/BAD) BEFORE parsing literals
- Fixed detection of 'A0001 OK ...' responses that were being missed
- Added debug logging on failure for easier troubleshooting
- Increased FETCH timeout from 30s to 120s for large emails with attachments
- Applied same 120s timeout to single UID fallback fetches
2026-08-19 00:40:35 +02:00
javier 43ccd7bd26 feat: mailio-based POP3 synchronizer (option USE_MAILIO_IMAP)
- Added Pop3SynchronizerMailio using mailio library
- CMake option USE_MAILIO_IMAP controls both IMAP and POP3 mailio synchronizers
- Implements POP3: connect, auth (USER/PASS, XOAUTH2), LIST, RETR, DELE
- SyncFolder: fetches new messages by UID
- XOAUTH2 support for Gmail/Outlook OAuth2 tokens
- Falls back to original Pop3Synchronizer when USE_MAILIO_IMAP=OFF
- Ready to enable with: cmake -DUSE_MAILIO_IMAP=ON
2026-08-18 10:51:09 +02:00
javier f798f7ecc0 feat: mailio-based IMAP synchronizer (option USE_MAILIO_IMAP)
- Added ImapSynchronizerMailio using mailio library (C++17, Boost)
- CMake option USE_MAILIO_IMAP (OFF by default) to avoid Boost dependency
- Fetches Boost + mailio via FetchContent when enabled
- Implements full IMAP: connect, auth (LOGIN/XOAUTH2), LIST, SELECT, FETCH, STORE, APPEND, EXPUNGE
- SyncFolder: detects deletions, fetches new messages, updates flags in batches
- XOAUTH2 support for Gmail/Outlook OAuth2 tokens
- Falls back to original ImapSynchronizer when USE_MAILIO_IMAP=OFF
- Ready to enable with: cmake -DUSE_MAILIO_IMAP=ON
2026-08-18 02:30:23 +02:00
javier a004bdd60f 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
2026-08-17 15:34:49 +02:00
javier 364624aada Fix IMAP FETCH parsing to correctly handle multi-line literal bodies, ensuring subject, sender, recipient, and date are populated from headers 2026-07-10 00:09:16 +02:00
javier 66d62d0635 Fix: Ensure ImapSynchronizer::initialize() is called before using synchronizer in MailService::fetchMails()
- Added missing initialization of IMAP synchronizer before fetching mail items
- Fixed missing semicolon in error message
- This ensures IMAP connection parameters (host, port, SSL, credentials) are properly set
- Fixes the issue where breakpoints in ImapSynchronizer::initialize() were never hit
- Enables both manual folder sync and automatic SyncScheduler to work correctly
2026-07-08 22:53:27 +02:00
javier 4569c174f0 Actualizaciones varias: mejoras en cuenta, sincronización, UI 2026-07-05 10:45:44 +02:00
javier 967231db3b Base: fix compile errors in wino-mail-dtkqt (composeview UI, initializeComposition, startNewEmail, authenticator includes) 2026-06-23 01:34:13 +02:00
javier 0e9f620fe0 Fix build: synchronize Request API, fix GmailSynchronizer, and migrate UI to Qt6 Widgets 2026-06-17 22:44:27 +02:00
Padrino acaf741eb9 Complete phases 6 and 7: Notifications & System Tray, Background Sync & Scheduling 2026-05-29 22:53:57 +02:00
Padrino c3567f93d5 Add event publishing to Outlook and Gmail synchronizers for AccountConnected, SyncStarted/Finished, and MailItemAdded/Updated/Removed events 2026-05-29 10:51:49 +02:00
Padrino acec320222 Implement basic UI with QML (MailListPage) and batching DbChangeProcessor (Step 3-4 of transition plan) 2026-05-17 01:09:01 +02:00
Padrino e3071a23e0 Paso 2: Implementar sistema de mensajería/eventos con Event Bus y actualizar synchronizers para publicar eventos 2026-05-13 01:18:04 +02:00
Padrino 6022aeafae Add IMAP synchronizer stub, update CMakeLists.txt 2026-05-12 00:26:27 +02:00