On Tue, 21 Jul 2026 23:18:41 GMT, John Hendrikx <[email protected]> wrote:

>> modules/javafx.graphics/src/main/java/javafx/scene/CssStyleHelper.java line 
>> 919:
>> 
>>> 917:             final String property = cssMetaData.getProperty();
>>> 918: 
>>> 919:             CalculatedValue calculatedValue = cacheEntry.get(property);
>> 
>> it looks like the value is stored by property name, which means if the SKIP 
>> value was stored and then the metadata was replaced (by setting a skin, for 
>> example, which uses the same property names), the old SKIP would prevent 
>> re-evaluation.
>
> A property always evaluates the same, as this is dictated by the stylesheet, 
> not by the presence or absence of a property in the CSS metadata. So the 
> stylesheet says: `xyz` must be `5` here, and if you replace the skin and it 
> has the same property, that evaluation is still correct.
> 
> There may be a problem if that new property is of a different type (I didn't 
> test), but I consider that beyond the scope of this fix as that has never 
> worked. If you see an easy solution, I can consider adding it -- my primary 
> goal was to fix the customer found regression that seemed to have been due to 
> #1076 but in reality has been there much longer, only less visible.

I have to admit it's a rather contrived scenario, so I am not concerned.  The 
devs  can always work around this by using different property names.

Maybe just add a comment pointing to this scenario?

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

PR Review Comment: https://git.openjdk.org/jfx/pull/2218#discussion_r3640730982

Reply via email to