| Summary: | While printing special sample file or generating a printer preview for it the UI freezes | ||
|---|---|---|---|
| Product: | [Applications] okular | Reporter: | postix <postix> |
| Component: | printing | Assignee: | Okular developers <okular-devel> |
| Status: | ASSIGNED --- | ||
| Severity: | normal | CC: | aacid, nate, nicolas.fella, postix |
| Priority: | NOR | ||
| Version First Reported In: | 21.04.3 | ||
| Target Milestone: | --- | ||
| Platform: | Other | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | Flamegraph for CPU1 | ||
|
Description
postix
2021-07-10 14:41:36 UTC
> It seems to run on the same thread as the UI if I am not mistaken?
yes, that appears to be the case.
What might make sense is to change "Document::PrintError print(QPrinter &printer)" to something like "PrintJob print(QPrinter &printer)" where PrintJob is a (KJob derived) class that encapsulates an async print operation.
However that touches the generator interface, which as I understand is subject to ABI constraints?
(In reply to Nicolas Fella from comment #1) > However that touches the generator interface, which as I understand is > subject to ABI constraints? We just broke ABI so if you want to break it, now it's the time https://invent.kde.org/graphics/okular/-/commit/a2576dc746767f0ca0bda174c8e2b8d4817d0c2b A possibly relevant merge request was started @ https://invent.kde.org/graphics/okular/-/merge_requests/540 |