Tier 3: Compose MV split #10
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "tier3/compose-mv"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Extract ComposeModel from ComposePanel so the 760-line god widget becomes a testable model + thin binding.
What
lazarus/compose_model.py(225L, Qt-free):ComposeSeed+ buildersbuild_reply/forward/mailto, account helpers (account_for_message,email_for_account,gnupg_keyid_for_account), and pure formatting (sig_block_text,subject_with_prefix,quote_body_text,forwarded_text). Covered by ad-hoc checks (account detection, RE/FW dedupe, sig block, mailto/reply/forward seeds).lazarus/compose.pythin binding:__init__seeds via model,account_name/email_address/gnupg_keyid/_sig_block_textnow shim to model,_insert_signaturestays on the panel (QTextCursor/cursor-position preservation is widget-specific). 757 → 690 lines.Diff hygiene
python -m py_compileclean; ad-hoccompose_modeltests pass (see/tmp/test_compose_*.pyin run history).O now asks for a destination via getExistingDirectory (defaults to attachment_save_dir, ~/Downloads), writes decoded parts directly there with dedup suffix (.1, .2), and post-save either reveals via file_browser_command (attachment_reveal='file_browser') or just shows a status message ('none'). No temp-dir + file-manager to /tmp. New settings: attachment_save_dir string default '~/Downloads' attachment_reveal 'file_browser'|'none' default 'file_browser' Old file_browser_command retained as the reveal template; empty means skip. Temp-dir path removed; still falls back through nautilus/dolphin/thunar/xdg-open.329900ecd9to0a3e142a98Pull request closed