mirror of
https://github.com/storytold/pdfcraft.git
synced 2026-10-27 19:48:14 -06:00
* Forms: push buttons run their show/hide-a-field action A push button whose Mouse Up action is a Hide action (ISO 32000-2 §12.6.4.11) did nothing when clicked: the action wasn't read, so the button counted as having no action at all. Buttons now read it: /T as a field name, a reference to a field or one of its widgets (named by its fully qualified name, following /Parent with a cycle guard), or an array of these; /H false shows instead of hiding. Clicking hides or shows the named fields and their kids through the same edit that a script setting field.display uses, so it is one undo step. A hidden widget (Hidden or NoView flag) no longer takes clicks, tab stops, hover frames or field highlights. That also covers fields that a script hides. Tests: forms push_buttons_read_hide_actions (names, references, arrays, /H, a /Parent cycle) and ui-egui hide_actions_hide_and_show_fields. parity: edit.action-show-hide-field is shipped. * Forms: push buttons with an action show the pointing hand Hovering a push button showed the "not allowed" cursor, although clicking it runs its action. Buttons that aren't read-only and have an action now show the pointing hand; read-only buttons and buttons with no action keep the "not allowed" cursor. Test: hide_actions_hide_and_show_fields checks the cursor (it fails without this change). * Clippy: needless borrow in the hide-action test Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Brandon Thomas <echelon@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>