On Thu, 10 Sep 2026 19:40:38 GMT, Andy Goryachev <[email protected]> wrote:
>> Not sure I understand. Why would it do that? We just create it and move on. >> No other method is called. > > the use case is this: > - layout() is called at the top of the hierarchy > - a child is added somewhere in layoutChildren(), which invokes reapplyCSS(), > which calls createStyleHelper() > - createStyleHelper() triggers another property change, and let's say that > property has a listener that adds another child > - since isPerformingLayout() is true, the child's css is processed immediately > > the issue is that while `ancestor.cssHelperStale = false`, the > `ancestor.styleHelper` is still old, causing wrong css to be applied (which > represents a regression) Okay then I probably understood you right, that's exactly what I've been checking all day (inspired by your other comment). Wrote some failing tests already but need to do more testing. I might make a PR to simplify the `triggerStates` before, since that currently makes the logic worse to understand (and may enable some optimizations as well). ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/2225#discussion_r3982939722
