On Fri, 11 Sep 2026 15:14:08 GMT, Marius Hanl <[email protected]> wrote:

>> Something I found out while experimenting in 
>> https://github.com/openjdk/jfx/pull/2051.
>> It was on my list to do since then.
>> 
>> The `VirtualFlow` can end up creating 1-2 unnecessary cells, which then are 
>> never used. They just sit in the pile.
>> This happens because we may end up calling `addLeadingCells` although our 
>> first cell is already on position `0`, so at the top - there is no cell 
>> above us.
>> 
>> In this scenario, we do not need to call `addLeadingCells`.
>> 
>> Also added the optimization I found in the PR mentioned above.
>> When we have 10 visible cells, size 25px and scroll 10px, we will have 11 
>> cells visible. 
>> If we scroll to the top again, we will have 10 cells visible again -- and in 
>> this case we will remove it from the `sheet`. 
>> But the pile could contain even more piled cells (e.g. when the application 
>> size got smaller, we have less cells to render, all remaining cells went 
>> into the pile). 
>> So the removal is a bit faster with that method, instead of always calling 
>> `removeAll`. Same functionality.
>> 
>> ---------
>> - [x] I confirm that I make this contribution in accordance with the 
>> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai).
>
> Marius Hanl has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   bulk remove

Marked as reviewed by mstrauss (Reviewer).

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

PR Review: https://git.openjdk.org/jfx/pull/2308#pullrequestreview-5182790870

Reply via email to