aboutsummaryrefslogtreecommitdiffstats
path: root/src/m_email
Commit message (Collapse)AuthorAgeFilesLines
* chore(i18n): update translation source locationsHEADmainsaturneric23 hours10-3120/+3120
| | | | | | | - refresh source line references across email, IM, key server, and OpenPGP inspection catalogs - preserve existing translations while synchronizing catalog metadata - update references for all supported locales
* refactor(email): use Qt string literal operatorssaturneric28 hours7-64/+71
| | | | | - replace QStringLiteral with u""_s and QLatin1String with ""_L1 - import Qt::StringLiterals per file, as modules have no host PCH
* refactor: remove Qt5 leftovers from modulessaturneric28 hours1-12/+0
| | | | | - drop the pre-6.4 fallback for QFormLayout::setRowVisible - use QList instead of QVector
* feat(email): re-check open messages when key databases are reloadedsaturneric3 days2-2/+6
| | | | | - handle KEY_DATABASES_RELOADED like a key database refresh - declare the event in the module manifest
* i18n(translations): update catalog source referencessaturneric4 days10-60/+60
| | | | | | - refresh source line locations across module translations - normalize Instant Messaging TS file formatting and metadata - preserve localized translations while regenerating catalogs
* fix(i18n): avoid lupdate namespace parsing warningsaturneric4 days1-8/+11
| | | | | - alias command metadata to prevent lupdate misreading qualified types - reformat Open IMAP Controller metadata initialization consistently
* fix(email): show an unauthorized signing key as its own verdictsaturneric4 days20-1613/+1885
| | | | | | | | - map host validity 10 (key not authorized) to a new badge state - rank it between "could not be checked" and "bad signature" - word it on the badge, security view and report, not as BAD - carry it through the verification payload by name - translate the new strings in every shipped locale
* fix(build): prioritize selected OpenSSL headerssaturneric4 days1-1/+4
| | | | | - prevent imported OpenSSL targets from being marked as SYSTEM - ensure matching headers are searched before Homebrew's OpenSSL headers
* fix(build): align vmime headers with OpenSSL librarysaturneric4 days1-0/+7
| | | | | | - prioritize the discovered OpenSSL include directory for vmime - prevent mismatches with Homebrew's unversioned OpenSSL headers - ensure the module and its tests use headers matching the linked library
* chore(email): update vmime submodulesaturneric5 days1-0/+0
| | | | - advance vmime to the latest referenced commit
* i18n: add Turkish module catalogscerob2026-10-111-0/+3236
|
* feat(email): update attachment UI translationssaturneric2026-09-299-1713/+2197
| | | | | | | | - add translations for attachment management and message actions - add summary and expand/collapse attachment strings - refresh source locations after email view changes - mark obsolete draft and attachment messages as vanished - update German, Spanish, French, Italian, Polish, Russian, and Chinese locales
* feat(email): redesign action and attachment barssaturneric2026-09-296-323/+961
| | | | | | | | - centralize message commands as reusable actions with shared shortcuts - add compact attachment summaries, menus, and expandable lists - move secondary commands into More and show read-only status separately - centralize action, attachment, security, and surface layout decisions - enable compact Status Panel behavior for the email editor
* i18n(email): complete email module translationssaturneric2026-09-278-40/+40
| | | | | | - remove unfinished markers from translated email strings - add localized mail account labels and search keywords - complete email message and IMAP controller translations across locales
* i18n(email): update email translationssaturneric2026-09-279-806/+1083
| | | | | | | - refresh source locations after email module changes - add ModuleEMail context strings across locales - restore translated mail editor and IMAP actions - mark new locale entries as unfinished where needed
* refactor(i18n): migrate modules to shared translation helpersaturneric2026-09-271-17/+18
| | | | | | | | - replace direct GTrC translation calls with GTrC::tr - mark deferred UI and command strings with GTrC::Noop - update email, IM, key server, PGP, GnuPG, and update modules - remove redundant local translation helper functions - apply related formatting and pointer declaration cleanup
* i18n(email): update email translationssaturneric2026-09-269-4838/+5171
| | | | | | | - add translations for IMAP refresh status messages - add encryption recipient and message availability strings - update source locations across supported locales - mark removed email messages and actions as vanished
* refactor(email): simplify crypto SDK test stubssaturneric2026-09-241-17/+1
| | | | | - remove unused byte buffer duplication helper - update the crypto entry point section comment
* feat(im): add instant messaging token modulesaturneric2026-09-241-0/+3
| | | | | | | | - add encrypted Base58 token encoding with shared book phrases - provide IM encrypt and encrypt-and-sign editor commands - add settings UI for phrase management and fingerprints - register the module and its SDK-free codec tests - register existing email module tests with CTest
* fix(email): persist IMAP state on closesaturneric2026-09-243-22/+13
| | | | | | | | - remember the current account during controller destruction - support host-frame dismissal without relying on done() - move IMAP sizing to the module registration declaration - remove the controller's standalone window resize - clean up the dialog header declaration and include order
* refactor(mail): centralize worker thread shutdownsaturneric2026-09-247-61/+58
| | | | | | | - add a shared bounded-stop helper for mail worker threads - reuse safe detachment behavior across mail dialogs and controllers - simplify public key conversion during email signing - apply formatting updates in module registration metadata
* refactor(email): remove unused helper definitionssaturneric2026-09-231-24/+0
| | | | | | | - remove unused GUI warning dialog helper - remove unused default save directory resolver - remove unused EML size limit constant - remove unused email settings page identifier
* feat(email): migrate UI to host command modelsaturneric2026-09-2315-650/+430
| | | | | | | | | - register native document, settings, and IMAP widgets through the SDK - add Lua mounts and commands for email actions and navigation - move document opening, saving, and message creation to host commands - use module-scoped settings APIs for account and view state - implement the document widget interface for email message handling - update SDK stubs and module metadata for the new integrations
* feat(modules): enable custom UI capabilitiessaturneric2026-09-231-1/+2
| | | | | | | | - grant ui.custom capability to email module - grant ui.custom capability to GPG info module - grant ui.custom capability to key server sync module - grant ui.custom capability to PGP inspect module - grant ui.custom capability to version check module
* fix(email): correct analysis argument orderingsaturneric2026-09-222-7/+7
| | | | | - pass channel before analysis type at all call sites - update the comment separator to match project style
* refactor(email): remove unused temporary variablessaturneric2026-09-221-15/+0
| | | | | - delete redundant null pointer declarations from email operations - preserve existing structured info handling and error reporting
* refactor(email): migrate to context-based SDKsaturneric2026-09-2215-330/+682
| | | | | | | | | - pass SDK contexts through crypto, storage, UI, and buffer APIs - replace legacy ownership helpers with RAII-style buffer handling - preserve secure credential storage and wiping semantics - update analysis, key, recipient, and import integrations - migrate tests to fake host API tables and real SDK wrappers - add storage capability to the email module manifest
* refactor(gpg-info): migrate to module logging macrossaturneric2026-09-212-11/+29
| | | | | | | - replace legacy MLogDebug calls with structured logging macros - preserve diagnostic context while using stream-style log formatting - add logging API stubs and C++ module ID definitions for tests - apply formatting updates to email SDK test stubs
* build(modules): standardize module test output directoriessaturneric2026-09-201-4/+4
| | | | | | - route module tests and fuzzers to the shared module-tests directory - remove global runtime and install directory redirects - prevent duplicated module install paths and discovery strays
* style(formatting): reformat module source filessaturneric2026-09-194-579/+690
| | | | | | - apply consistent C++ formatting across email and key modules - normalize include ordering and line wrapping - preserve existing behavior while improving readability
* refactor(modules): migrate modules to runtime APIsaturneric2026-09-193-388/+207
| | | | | | | | - replace legacy bootstrap and event macros with versioned hooks - register event handlers through explicit GFEventBinding tables - use GFEvent responses and runtime UI object helpers - declare handled events in each module manifest - update email test include paths for module runtime headers
* fix(modules): correct module lifecycle setupsaturneric2026-09-192-4/+4
| | | | | | | - rename the email CMake target to match the module name - register key server translations during module registration - standardize lifecycle logging with `LOG_INFO` - document no-op deactivation handlers and correct shutdown messages
* style(formatting): apply consistent code formattingsaturneric2026-09-191-7/+14
| | | | | | | - format macro definitions and function return types - normalize export header preprocessor indentation - wrap long calls and deprecated attributes consistently - apply formatting updates across email and module sources
* refactor(modules): migrate to unified GFModule APIsaturneric2026-09-1914-20/+16
| | | | | | | - replace legacy module utility includes across module sources - simplify bootstrap and translation registration macros - update module headers to use the unified public interface - replace secure object creation with SDK object factories
* feat(modules): adopt manifest-driven module buildssaturneric2026-09-192-53/+29
| | | | | | | | - add module.json manifests with metadata and translation contexts - migrate four modules to the gf_add_module helper - preserve Qt, VMime, UI, and include directory configuration - reduce email module exports to its single ABI symbol - remove duplicated packaging and translation setup from CMakeListsաճառ
* feat(modules): package modules as signed gfmodule filessaturneric2026-09-151-0/+13
| | | | | | | - add signed package generation for email and GnuPG info modules - package key server sync and version checking modules - define module IDs, versions, capabilities, and metadata - retain loose library builds during the packaging transition
* refactor(email): remove obsolete crypto SDK stubssaturneric2026-09-141-160/+2
| | | | | | | - delete unused GPG verify, decrypt, sign, and encrypt stubs - remove the obsolete result-freeing stub - update analysis error type to uint32_t - include cstdint for the fixed-width type definition
* test(email): use portable error type in crypto testssaturneric2026-09-141-13/+14
| | | | | | - include cstdint for the fixed-width error type - replace gpgme_error_t with uint32_t in test cases - align test variables with updated crypto API expectations
* fix(email): use SDK error type for GPG operationssaturneric2026-09-143-28/+33
| | | | | | | - replace gpgme error types with uint32_t across email APIs - compare results against GF_GPG_ERR_NO_ERROR - include cstdint for the updated error type - apply formatting adjustments to affected code
* refactor(email): migrate crypto to RAII SDK handlessaturneric2026-09-142-131/+360
| | | | | | | | - replace manual result cleanup with GFGpgResult ownership - use managed buffers for encryption, signing, verification, and decryption - preserve SDK failure messages through handle-based results - keep key ID memory alive for the duration of SDK calls - add handle-based SDK stubs with ownership and leak tracking
* fix(test): align crypto SDK stubs with borrowed argumentssaturneric2026-09-141-4/+7
| | | | | | - stop freeing borrowed key and capsule identifiers - update stub signatures to accept const identifiers - prevent allocator violations during correct SDK calls
* refactor(sdk): stop allocating borrowed API argumentssaturneric2026-09-143-18/+18
| | | | | | | | - return static module identity strings without duplicating them - remove unnecessary DUP allocations from SDK registration and calls - convert temporary Qt strings directly to UTF-8 API arguments - preserve ownership for transferred command execution contexts - avoid leaks now that SDK arguments are borrowed
* feat(modules): add single-symbol module bootstrap APIsaturneric2026-09-141-1/+2
| | | | | | | | - define versioned host and module API bootstrap tables - adapt classic module lifecycle functions to the new API - validate host ABI compatibility before exposing modules - migrate email, GnuPG, key server, and version modules - retain legacy metadata and event handling compatibility
* refactor(email): migrate to list-based GPG APIssaturneric2026-09-142-51/+60
| | | | | | - replace raw recipient and address arrays with SDK list handles - use borrowed accessors with centralized list release - update key lookup rendering to consume key brief lists safely
* fix(email): free verification error stringsaturneric2026-09-141-0/+6
| | | | | - release error_string on successful region verification - prevent a per-region memory leak confirmed by ASan
* test(imap): cover folder status validationsaturneric2026-09-143-9/+153
| | | | | | | | - add tests for STATUS-based folder validation without fetching messages - verify listing validators detect mailbox recreation and message changes - cover unknown folders and optional mod-sequence handling - extend the fake IMAP server with STATUS and UIDVALIDITY support - reformat affected corpus test expressions consistently
* feat(email): add validated folder listing cachesaturneric2026-09-148-35/+443
| | | | | | | | | - cache email folders and message pages across dialog reopenings - restore the last account and folder for faster navigation - validate cached listings with IMAP STATUS before reuse - invalidate stale pages when mailbox validators change - register folder validator types for queued worker signals - apply formatting cleanup in email sources
* refactor(email): reposition imap progress indicatorssaturneric2026-09-141-12/+20
| | | | | | | - move the main progress bar into the action row near its related buttons - resize the main indicator for improved visibility during operations - center a compact loading bar within the empty-state pane - remove the former full-width header progress bar layout
* test(email): cover encrypted messages and reply renderingsaturneric2026-09-141-0/+177
| | | | | | | - verify ciphertext discovery in direct and nested MIME structures - cover decryption verdicts for secret, public-only, hidden, and unresolved recipients - test subject-based tab titles, sanitization, elision, and empty fallbacks - validate localized reply attribution and RFC 5322 forward dates
* fix(email): show loading state before declaring folders emptysaturneric2026-09-142-0/+59
| | | | | | | - add an indeterminate loading pane for empty folders being fetched - preserve cached messages while refresh operations are in progress - track busy status and descriptive loading text for the left pane - apply theme colors to the loading label