RFR: 8242553: IntegerSpinner and DoubleSpinner do not wrap around values correctly in some cases

drmarmac duke at openjdk.org
Wed Mar 27 09:29:25 UTC 2024


On Sun, 24 Mar 2024 15:11:16 GMT, drmarmac <duke at openjdk.org> wrote:

> This PR should fix the issue and cover all relevant cases with new tests.
> 
> Note: This involves a small behavior change, as can be seen in dblSpinner_testWrapAround_decrement_twoSteps() in SpinnerTest.java:749. With this change the wraparound behavior is similar to that of the IntegerSpinner.

I don't see that much value in any threshold like `step >= max-min`, no matter what the behavior beyond this threshold would be.
It would be almost as weird already for less extreme cases: Take `min=0, max=100, step=99, initial=50`, leading to `50-49-48..`, which even appears to move backwards.
Not sure if we can come up with any adjustments that cover all cases nicely - as an app developer I'd prefer either good logic that always works well, or simple logic that is easy to override (which it would be here).

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

PR Comment: https://git.openjdk.org/jfx/pull/1431#issuecomment-2022298388


More information about the openjfx-dev mailing list