Skip to main content

Module mail

Module mail 

Source
Expand description

The mail client behind the window: folders and their messages, what you do to them, drafts and sending.

Moving, archiving, deleting, junking, sending and discarding a draft wait ten seconds with “Undo” before anything reaches the server or the disk; meanwhile the message or the draft is hidden from the lists (docs/client.md, “Calm first”, rules 3 and 4). Reading and flagging happen at once and show at once: undoing them is doing them again.

Structs§

AttachedView 🔒
DraftEdit 🔒
DraftRow 🔒
DraftView 🔒
MailViews 🔒
What the mail page shows, computed off Qt’s thread.
OpenFolder 🔒
The folder the mail page shows.
Pending 🔒
Place 🔒
SenderView 🔒

Enums§

Work 🔒
What waits for its ten seconds.

Constants§

UNDO_SECONDS 🔒
Seconds to change your mind (docs/client.md, rules 3 and 4).

Functions§

act 🔒
“read”, “unread”, “flag”, “unflag”, “archive”, “trash”, “junk”, “not-junk”, “spam”, “not-spam”, “move”. “Spam” and “Not spam”, from the review queue or the Reader, as the message’s folder asks: in a Junk folder (your filter moved it there), “Spam” keeps it there marked, “Not spam” brings it back to the inbox; elsewhere, “Spam” moves it into the Junk folder, “Not spam” leaves it where it is, marked.
act_many 🔒
The same act on several messages (a selection, the review queue’s “for all”): reading and flagging at once, the rest under one “Undo”; “spam” and “not-spam” as each message’s folder asks (act).
act_now 🔒
Reading and flagging: shown at once, then told to the server; put back if it refuses.
act_now_many 🔒
Reading and flagging several messages: shown at once, then each account’s server told in one connection; put back where it refuses.
act_on_server 🔒
An act on a message seen on its server only (a search’s): reading and flags at once, moves, archiving and the trash with “Undo”; what teaches the spam filter needs the message here first.
action_of 🔒
What a key names, as an act on its message (in_junk: it is in a Junk folder); None for what is not a message here.
attach 🔒
Adds a file, from the file dialog or dropped on the window (file:// URLs).
batches 🔒
Messages of several accounts, kept here or seen on their server only, as one batch per account (Work::Batch).
closed 🔒
The writing window closed: an untouched draft goes, a written one stays in Drafts.
compose 🔒
A new draft: “new”, “reply”, “reply-all”, “forward” (the last three from the message key).
detach 🔒
Takes an attachment off: one you added, by position, or one a forward carries, by index.
discard 🔒
Deletes a draft after ten seconds; “Undo” opens it again.
draft 🔒
A draft as the writing window shows it.
draft_row 🔒
every_watcher 🔒
Every watcher: mail, calendars and contacts, GitHub.
finish 🔒
What waited, done now if nobody did it yet: its timer ran out, or the app is put away.
finish_all 🔒
Put away on a phone, Sioul may be stopped any moment: what waits for its ten seconds is done now rather than lost (an event deleted would come back).
flush 🔒
The window closes: what waits is done now rather than lost.
folder_title 🔒
forget 🔒
Takes a pending act off the list; the one before it, if any, can still be undone.
hidden 🔒
Messages moved and drafts sent or discarded, while “Undo” is offered.
hidden_files 🔒
The messages the Porch should not show either.
hidden_keys 🔒
Messages seen on their server only (a search’s), moved or deleted while “Undo” is offered: their keys.
hidden_pim 🔒
Contacts and events deleted, and occurrences left out, while “Undo” is offered.
in_junk 🔒
Whether a stored message is in a Junk folder of its account.
label_blocked 🔒
A sender blocked from one of their messages: the message goes into the spam filter’s label log (spam::labels). Blocking does not wait on it.
locate 🔒
The account a message belongs to, and where its file is now.
move_many 🔒
Messages dropped on a folder, of their account or of another one: those of its account in one connection, a folder’s as one set (UID MOVE); those of another one copied there first, then taken off theirs.
moves 🔒
names 🔒
“Jane, paul@example.org”, else “nobody yet”.
nudge 🔒
The account’s watcher fetches now: a moved message shows in its new folder, a sent one in Sent.
offer_back 🔒
A change made already (a drag): “Undo” stays offered for a moment, as for mail, and back puts back what was there.
offer_untrash 🔒
A note in the trash: “Undo” stays offered for a moment, as for mail.
opened 🔒
Opening a message marks it read, except while the window takes its own pictures.
own_addresses 🔒
Your addresses: never answered to, never counted among the others.
perform 🔒
Does what waited; returns what the status line says about it, if anything.
place 🔒
Where a message is: its account and its folder’s server name.
quiet_watchers 🔒
Put away on a phone: the watchers keep only what notices new mail (the inbox’s IDLE); the other folders, calendars and GitHub wait for its return.
rest 🔒
The day closed: “Undo” stays offered for a moment, as for mail.
save_draft 🔒
Saves what the writing window holds; returns “Saved at 14:02”.
schedule 🔒
schedule_filters 🔒
Runs your mail filters on the inboxes as their preview said, after ten seconds to undo; what they move leaves the lists meanwhile.
schedule_removal 🔒
Deletes a contact or an event after ten seconds to undo.
schedule_removals 🔒
Deletes several files at once after ten seconds to undo, (account, file) each: a task and its time blocks to come, or a task’s blocks left to the plan. back runs on “Undo”, for what was changed at once (a task’s link to its block taken out): it says what went wrong, else “”.
schedule_skip 🔒
Leaves one occurrence of a repeating event out, after ten seconds to undo.
send 🔒
Sends after ten seconds; the window closes, “Undo” opens it again. Returns what stops it now (no recipient), else nothing.
send_now 🔒
send_signed 🔒
Sends after ten seconds a message built and signed at Send with your security key; “Undo” throws it away and opens the draft again.
send_signed_now 🔒
Sends what was built and signed at Send, as built; then the draft goes.
sender 🔒
The account a new message goes out from: the one asked, else the first by priority.
show_mail 🔒
Computes the mail page on a thread and shows it, unless a newer one came first.
show_mail_here 🔒
The mail page computed on this thread, and shown unless a newer one came first. backend::show runs it in the same look at the mail as the Porch, so that the inbox the page shows is parsed once for both (maildir::CardsKept).
source 🔒
The message as it came, headers and all, for “Show the source”; cut after 512 KB.
touches_pim 🔒
Whether a work deletes a contact, an event or a task, or leaves an occurrence out: the pages follow at once.
undo 🔒
Cancels the newest act still waiting; a send or a discard gives back its draft, whose window opens again.
unsubscribe 🔒
One click on “Unsubscribe”: one click (RFC 8058) or a message to the list waits ten seconds with “Undo”, as sending does; a list that takes it only on its web page has the page returned, to open in the browser, at once. What cannot be done is said in the status line, the button’s tip.
unsubscribe_now 🔒
Leaves a list, its ten seconds gone: posts the one click, or sends the message from account as any message is sent (a copy in Sent, which Gmail files itself). Done, it is kept in the record. Returns what the status line says.
unsubscribe_offer 🔒
What a message offers to leave its list (docs/client.md, “Unsubscribing”), judged as the Reader judges it, and the account a request by mail goes out from: the one the message came to, when it sends.
unsubscribe_view 🔒
The Reader’s button for a message: none when it names no way out of a list.
views 🔒
wake_watchers 🔒
Back on a phone’s screen, where pauses may have slept through hours: every watcher fetches now (leaving quiet wakes it).