Home GnuPG
Diffusion GpgOL ac625b36d6a5

Implement printing from the file menu

Description

Implement printing from the file menu

* src/application-events.cpp (BeforePrint): Note down that
a before print was seen.
(ItemLoad): If a BeforePrint was seen. Mark the mail.
* src/mail.cpp (setIsPrint, isPrint, m_printing): New state.
(Mail::decryptVerify_o): Do not do async decryption when printing.
Check for childs of print mails.
(Mail::updateCategories_o): Do not set categories for prints.
(Mail::checkIfMailIsChildOfPrintMail_o): Check if the currently
decrypting mail is actually a print.

The BeforePrint event allows us to catch when we are printing. In
that case we do blocking decryption (which we already had implemented
as a debug option \o/).

But we see multiple mailitems here. One is the mail as currently
visible in the Inspector. One is the Mail in the print preview,
which we mark as print. And the last one is the actual printout
that is loaded once the "Print" button is really pressed.

The third one makes the checkIfMailIsChildOfPrintMail_o code
necessary.

Details

Provenance
aheineckeAuthored on Jun 7 2019, 12:50 PM
Parents
rO848846f0f3dd: Use ApplicationEvents_11 Interface
Branches
Unknown
Tags
Unknown
Tasks
T4560: GpgOL: Only quick print possible for encrypted mails