RFR: 8314754: Minor ticks are not getting updated both the axes in LineChart

Markus Mack mmack at openjdk.org
Tue Jun 25 15:19:27 UTC 2024


This PR ensures the `tickMarksUpdated()` method (overriden with minor tick mark layout code in subclasses) is called during `Chart` `Axis` layout when needed.
Previously, it was only called when tick mark length or range was changed, which is not happening during axis animations, causing minor ticks to become outdated when animations are enabled.

I've added a test that fails with the previous code, specifically checking the tick mark spacing.
Alternatively the test could be implemented by accessing ValueAxis.minorTickMarkValues, which would need to be made at least package-private however (with a shim). This implementation checks the tick mark `Path` shape instead, which is already publicly accessible (but could be considered an implementation detail).

-------------

Commit messages:
 - Axis: Call tickMarksUpdated() while animating
 - testMinorTicksMatchMajorTicksAfterAnimation

Changes: https://git.openjdk.org/jfx/pull/1489/files
  Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=1489&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8314754
  Stats: 43 lines in 2 files changed: 41 ins; 2 del; 0 mod
  Patch: https://git.openjdk.org/jfx/pull/1489.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/1489/head:pull/1489

PR: https://git.openjdk.org/jfx/pull/1489


More information about the openjfx-dev mailing list