diff options
| author | Danilo M. <danix@danix.xyz> | 2026-08-24 11:02:08 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-08-24 11:02:08 +0200 |
| commit | dd6f35b8f35f231ebf1511daef3dd707eaa9839d (patch) | |
| tree | 2013df8d9541164bef2339aeee2ab507d976a615 /CHANGELOG.md | |
| parent | f814bb57c03e01c96ec97c2bfb2d314210a95f28 (diff) | |
| download | qtmaildir-dd6f35b8f35f231ebf1511daef3dd707eaa9839d.tar.gz qtmaildir-dd6f35b8f35f231ebf1511daef3dd707eaa9839d.zip | |
fix(compose): default to quoting below, and focus the body on a reply
The previous commit fixed the cursor within each quote_position branch and
the user still saw the old layout, because the branches were already right:
what was wrong was the DEFAULT. quote_position shipped as `above`, and the
layout asked for is exactly what `below` already produced, a blank line at
the top with the quote underneath.
So the default flips, along with the fallback for a malformed value and the
warning naming it. Nothing needs an Upgrading note: compose has not been
released, so no config in the wild sets this.
Focus goes to the body whenever To: is already filled, which a Reply and a
Forward always are. The form's first widget took it otherwise, so the user
had to click into the editor before typing. A New message keeps the default,
since an empty To: is genuinely the first thing to fill in.
The focus test asserts on the window's focusWidget() rather than on
QWidget::hasFocus(): an unshown window is never active, so hasFocus() reads
false whatever the code does and would fail against a correct fix. Both
directions are mutation-checked, since focusing unconditionally passes the
reply case while breaking the new-message one.
Diffstat (limited to 'CHANGELOG.md')
| -rw-r--r-- | CHANGELOG.md | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 9e19ff2..abd0ba7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,10 @@ point at which they are stable. reply follows what the message being answered used. - Drafts autosave to the account's `drafts` folder as ordinary Maildir files, so mbsync carries them to the server and another client can pick one up. +- A reply opens with the cursor on a blank line above the quote, and with the + body focused, so typing can start immediately. `[compose] quote_position` + defaults to `below` (your reply first, the quote under it); `above` puts the + quote first and the cursor after it. Closing a composer with unsaved edits asks first, and so does quitting with one open. - Sending goes to a per-account `send_command` on stdin, so any sendmail |
