On Thu, 27 Jun 2024 20:22:24 GMT, Markus Mack <mm...@openjdk.org> wrote:
> This PR fixes the placement of `BarChart` bars and category tick marks, > particularly when adding data / multiple series and enabling animations. > It covers all cases mentioned in the JBS ticket and adds a unit test. > > The settable `barGap` and `categoryGap` now should also behave as expected. > > There's a change regarding consistent placement of bars when there is more > than one series: > Now, for example, if there are two series S1 and S2, S1 bars will always be > on the left and S2 bars will always be on the right side of the tick mark. > This means that if some data category (=x-value) is only present in S2, but > not S1, the bar will still be drawn on the right. The previous behavior, if > the marks weren't off completely, would have put it on the left which I'd say > looks inconsistent. > There's a test for this situation as well. > > Note this does not fix > [JDK-8334873](https://bugs.openjdk.org/browse/JDK-8334873) where bars get > stuck while having different widths. There seem to be additional issues which > seem not directly related to the changed code and are probably out of scope > for this PR (unless we see some regressions). modules/javafx.controls/src/main/java/javafx/scene/chart/CategoryAxis.java line 74: > 72: /** This is the position of the first category along this axis */ > 73: private final DoubleProperty firstCategoryPos = > 74: new SimpleDoubleProperty(this, "firstCategoryPos", 0) { question: shouldn't line 74 be indented 4 spaces instead 8? also, we probably should update copyright year in all the touched files, like so: * Copyright (c) 2010, 2024, Oracle and/or its affiliates. All rights reserved. (I'll do a full review tomorrow) ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/1492#discussion_r1657926068