On Tue, 26 Mar 2024 21:32:16 GMT, Andy Goryachev <ango...@openjdk.org> wrote:

> > * Use modulo arithmetic to compute the value (what this PR proposed)
> > * Don't process the increment at all (i.e., treat it as an out-of-range 
> > request and do nothing)
> 
> 3. fall back to  amountToStepBy=1
> 
> try this: integer spinner, min=0. max=100, step=137. initial value 50 there 
> is the sequence when repeatedly pressing arrow down button: 14, 79, 43, 7, 
> 72, 36, 0, ...
> 
> makes no sense.

But if that's what the app says to do, and given that it's a well-defined 
operation (albeit not very useful in this example), there should be a good 
reason to ignore it. I'm not convinced that there is, but if there is, option 3 
isn't it.

> falling back to step=1:
> 
> 49, 48, 47, 46, ...

That's at least as arbitrary as clamping to the max value (the status quo). 
Clamping the result to the max says, in effect, "let's ignore the `wrap` flag" 
when we conclude that wrapping beyond a certain limit doesn't make sense. 
Setting the increment to 1 says, in effect, "let's ignore the `step` value" 
when we conclude that wrapping beyond a certain limit doesn't make sense. If we 
really are determined to not honor the step value / wrap flag when we conclude 
that wrapping beyond a certain limit doesn't make sense, then we should treat 
it as an app error and do nothing.

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

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

Reply via email to