mirror of
https://github.com/storytold/pdfcraft.git
synced 2026-11-01 22:19:10 -06:00
A plain #[test] in page_pointer.rs reads the source of the page modules (the per-page chain in canvas::document_area and the modules it calls) and fails on any raw read of egui's pointer state: hover_pos, interact_pos, latest_pos and press_origin, Context's pointer_*_pos shortcuts, and the primary_* and any_* button reads. Its message names the file and line and points to PagePointer. 24 open PRs add such reads to these modules, and three of them (#2137, #1709, #2235) merge cleanly on top of the snapshot, so they would quietly bring back the touch and overlay bugs it fixed. CI's existing cargo test --workspace runs it on Linux and Windows. To pass, the snapshot also carries the button state (primary_down and any_down, global as before), and the page-input button reads that were left use it or the frame's press edge: drag ends in Prepare, redact, the Link tool, added content, Edit text and objects, the comment grab check, a text field opening on the press, and the press that makes a page current. Code in these files that is not page input is listed, each with its reason, in NOT_PAGE_INPUT: the field, paragraph and added-text editors (Areas of their own), the signature dialog's Scan tab, Organize Pages, the page size hint, comment key handling, and four view gates in document_area that run before the pages' widget exists (zoom anchor, drawing edge scroll, glide interruption, full screen's click to turn the page), now small named functions. Prepare a form's calculation order overlay (calc_order_ui) is a page module too, and takes the pages' pointer for its hover. The test also fails on a list entry that reads no pointer state any more, and on a source file that takes PagePointer without being listed as a page module. Seen failing: a raw hover_pos() put back into zoom_snap.rs, and main's raw read put back into the stamp block of document_area, are reported with their lines, as are a stale list entry and crop.rs left off the module list. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>