On Thu, 20 Jan 2022 17:19:49 GMT, Nir Lisker <[email protected]> wrote:
>> John Hendrikx has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Fix grammar mistakes and did some small rephrases
>
> modules/javafx.base/src/main/java/javafx/beans/value/LazyObjectBinding.java
> line 91:
>
>> 89: *
>> 90: * As the binding must be valid after it becomes observed
>> the first time
>> 91: * 'get' is called again.
>
> Maybe add an `@link` to `ExpressionHelper` where the validation happens
> before listener registration, for clarity.
I've added this additional text:
* See com.sun.javafx.binding.ExpressionHelper (which is used
* by ObjectBinding) where it will do a call to
ObservableValue#getValue
* BEFORE adding the actual listener. This results in
ObjectBinding#get
* to be called in which the #allowValidation call will block it
from
* becoming valid as the condition is "isObserved()"; this is
technically
* correct as the listener wasn't added yet, but means we must call
* #get again to make this binding valid.
This might be something we can fix in future work, to avoid this double call to
`get`.
-------------
PR: https://git.openjdk.java.net/jfx/pull/675