|
From: Vest <no...@gi...> - 2026-09-24 05:28:16
|
Branch: refs/heads/master Home: https://github.com/PCGen/pcgen Commit: 14473b5799bfc73a2d3ff51370a27dadcb2633c3 https://github.com/PCGen/pcgen/commit/14473b5799bfc73a2d3ff51370a27dadcb2633c3 Author: Vest <Ve...@us...> Date: 2026-09-24 (Thu, 24 Sep 2026) Changed paths: M code/src/java/pcgen/gui2/util/JTreeTable.java A code/src/test/pcgen/gui2/util/JTreeTableExpandControlHitTest.java Log Message: ----------- fix: expand JTreeTable nodes on a single disclosure-triangle click (#7744) The tree column is edited by forwarding the mouse event to the embedded JTree. Some platform L&Fs (notably macOS Aqua) do not treat that synthetic forwarded click as a hit on the expand/collapse control, so a single click on a node's disclosure triangle did nothing and only a double-click (or a click on the row text) would toggle it. This showed up in the Spells tab, where level nodes such as "0" would not expand. Add JTreeTable.expandControlPathForClick(tree, x, y), which returns the branch path whose disclosure control is under a forwarded (tree-space) point, and have the editor toggle that path directly. The node's expanded state is captured before dispatch and the direct toggle is applied only if the dispatch itself did not change it, so L&Fs that already handle the click are not double-toggled. The end-to-end behaviour is L&F-specific and not reproducible in the headless (Metal) test harness, so JTreeTableExpandControlHitTest covers the pure hit-testing decision (control strip vs. content vs. off-row vs. leaf) plus the editor toggle round-trip. To unsubscribe from these emails, change your notification settings at https://github.com/PCGen/pcgen/settings/notifications |