mirror of
https://github.com/storytold/pdfcraft.git
synced 2026-11-12 09:21:17 +00:00
group_members now follows the comment list's rules (pdfcraft_render::link_replies and group_primaries), so a restyle never reaches an annotation listed on its own: - a loop in /IRT, or a chain past MAX_GROUP_DEPTH links, leaves the annotation a comment of its own (it used to group a loop's members, and refused a deep chain); - an /IRT to the annotation itself is no link; - links, widgets and pop-ups are neither primaries nor subordinates (a locked link with /RT /Group used to refuse a restyle); - subordinates are collected down to the depth the list follows. The module comment no longer says moving and deleting go through group_members: they act on the member asked for, as Acrobat desktop does. Tests: a group of three, a loop (with an /IRT to itself and a loop through a plain reply), a missing primary (a dangling /IRT, the page, a link), other /RT values, a bounded chain, one undo step for a group restyle, and every annotation of a mixed page checked against the comment list's groups. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Pq7HyCfwzyRXj4VfQAVVdv