Commit graph

27 commits

Author SHA1 Message Date
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
3fd859dbdd chore: ignore local CLAUDE.md 2026-07-09 14:17:50 +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
mow
9ec407d9aa refactor(session): introduce cursor model and full command set 2026-03-09 21:08:59 +01:00
mow
767315a65e refactor(examples/cli): update to new SessionCommand API 2026-03-09 21:06:51 +01:00
mow
7fa218e68c fix: remove_document() kind-check moved before mutable borrow to prevent silent error drop 2026-03-08 17:41:09 +01:00
mow
a6c1863f57 refactor(core): reorganize module structure 2026-03-08 17:41:05 +01:00
mow
59ab96be98 docs: fix misleading and add comment for SessionData 2026-03-08 09:20:34 +01:00
mow
31e7e9c3ef feat: improve test harness output with structured colored logging 2026-03-08 09:04:28 +01:00
mow
e928c61107 refactor: rename commands to SessionCommand/DocumentCommand split
- Rename SessionKind → CollectionKind
- Replace monolithic DocumentCommand with SessionCommand (lifecycle + collection)
  and DocumentCommand (reserved for future document operations)
- Separate session creation from population (New → Select → AddDirectory)
- Collection commands operate on active session, no hidden side effects
- RemoveDocument/CopyDocument use explicit indices (no more Option)
2026-03-08 09:01:20 +01:00
wfx
1ab1e2228e chore: add CLI tests for copy/move/delete operations and a print_session helper function 2026-03-07 23:03:40 +01:00
wfx
82f2f9d80e chore: restore Cargo.toml 2026-03-07 22:57:29 +01:00
wfx
95ce7b7598 feat: add CopyItemToSession and DeleteItemToSession commands 2026-03-07 22:57:29 +01:00
wfx
c4c5568630 add Cargo.lock 2026-03-07 22:57:29 +01:00
wfx
5eb444091f Cargo.toml gelöscht 2026-03-07 22:57:29 +01:00
wfx
56b7ef47df Delete Cargo.lock 2026-03-07 22:27:14 +01:00
mow
c85f35310e chore: inital commit
Split project into a Cargo workspace with two crates:

- core/ (noctua_core): UI-independent document library
- ui/ (noctua_ui): COSMIC application scaffold (empty)

justfile for workspace (run, run-cli, check, test, build)
2026-03-07 20:29:18 +01:00