BUG: TreeView setPrefHeight CSS freakout
Ty Young
youngty1997 at gmail.com
Sat Jun 15 02:05:18 UTC 2019
Attempting to set the preferred height of a TreeView or content that
would otherwise expand the component(super.setPrefHeight or another
component in the containing node) results in a massive freakout
resulting in a memory leak and extremely high CPU usage.
Using Netbean's method profiler[1] shows that
VirtualFlow.addTrailingCells is taking 130 seconds. Going down a leaf
shows that Node.applyCss and Node.processCss are taking up the
majority(all? Numbers aren't adding up.) of the time and presumably
causing the memory leak and high CPU usage.
Even after removing any custom CSS stylesheets this still happens. This
only seems to affect TreeView as well as no other component(maybe
ListView since they are similar?) has this issue.
Maybe related is a CSS bug where an in-between state between a scrollbar
showing in the TreeView and when there is not. In this state, a visible
white space can be seen at the bottom where the scrollbar was(although
the white space is smaller). If you are using the default JavaFX CSS
stylesheet you won't see this as the background color is white. Clicking
a TreeView item seems to update the TreeView and fix this white space
issue. ScrollPane and ScrollBars are really broken in JavaFX in general
under Linux so its hard to say whether or not it is related.
Any ideas on what's causing all this?
[1] https://imgur.com/a/DT3eiNj
More information about the openjfx-dev
mailing list