On Sat, 4 Oct 2025 04:28:19 GMT, John Hendrikx <[email protected]> wrote:

> As a side note, even 30-40 ms seems incredibly slow, that's bound to create 
> noticeable input lag or frame skips :/ How many cells were visible? 1000 or 
> 100x1000? If the latter, than 30-40 ms seems okayish.

I agree. One problem here is, that all cells will be updated (via `updateItem`) 
of a `TableRow`, even if not visible. 

I counted all `updateItem` calls, results below.

Code from Benchmark above:
- `TableRow` `updateItem`: 78
- `TableCell` `updateItem`: 7800

39 rows are displayed, and they are updated twice (first with `-1` to reset, 
then with the actual index). And all rows have 100 cells.

A `TableCell` `updateItem` without any code (no `setText`, no `setGraphic`) is 
indeed faster, around 10-20ms.
Looking into the code, there are some unnecessary `requestLayout` calls as well.

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

PR Comment: https://git.openjdk.org/jfx/pull/1830#issuecomment-3369192707

Reply via email to