Commit graph

13 commits

Author SHA1 Message Date
a3c87fcde4 fix: normalize raster images before img2pdf retry
img2pdf refuses images with alpha channels or more than 8 bits per
channel (common for screenshots). Normalize such images to opaque
8-bit with ImageMagick and retry img2pdf before falling back to a
full ImageMagick PDF conversion.
2026-08-09 11:34:07 +02:00
481f1ed702 feat: add visual feedback for printing
Print button is disabled while a job is being sent and a spinner shows
in the footer. On success a transient 'Sent to printer' confirmation is
displayed for a few seconds; on failure the error message stays in the
footer instead of replacing the document view.
2026-08-09 11:10:29 +02:00
fe1d7c0ebb feat: add Ctrl+P keyboard shortcut for printing
- Add KeyChar message and listener for character key presses
- Handle Ctrl+P in update to trigger print task
- Rebuild and install binary
2026-07-10 12:01:08 +02:00
2bc2abf070 fix: move Print button to footer to fix mouse scroll
- Remove menu bar from header_start (it consumed mouse wheel events)
- Add Print button in footer alongside page info
- Remove unused About message and menu code
- Scroll of mouse wheel now works correctly for page navigation
2026-07-10 11:55:10 +02:00
03fd8306a6 feat: add print support via CUPS (lp)
- Add Print command to DocumentCommand enum
- Add File menu bar with Print and About items
- Implement print_document_sync() using CUPS lp command
- Raster images converted to PDF via img2pdf (fallback: ImageMagick)
- SVG converted to PDF via pdftocairo → img2pdf
- PDF sent directly to printer via lp
- Ctrl+P keyboard shortcut (via ModifiersChanged subscription)
- Print status tracking with printing flag to prevent duplicates
2026-07-10 10:56:34 +02:00
a76993f69b feat(pdf): improve page navigation rendering 2026-07-07 20:35:41 +02:00
42b03acd62 Integrate Noctua with COSMIC image and PDF viewing 2026-05-28 17:43:36 +02:00
mow
79cc199d11 refactor: workspace/session/item ... ja ja, i know but now it is nailed. 2026-03-15 12:25:39 +01:00
mow
ca6f8f788f refactor: hopefully a better log 2026-03-13 17:22:44 +01:00
mow
4c1af08fb7 refactor(session): rethink and so ... remove useless close_session command 2026-03-12 16:53:29 +01:00
wfx
93fc1bf829 fix: mutable is also borrowed as immutable 2026-03-10 22:10:54 +01:00
mow
30e3bf6dbe fix: rename RemoveSession to DeleteSession and implement separate delete logic
replace unnecessary clones with borrows in manager and main
2026-03-10 20:12:16 +01:00
mow
1a0b8c49aa refactor: merge workspace (core/ + ui/) into a single flat binary crate
integrate CLI into main.rs, no lib.rs by design (YAGNI)
2026-03-10 19:20:57 +01:00