I enabled the property -Dprism.showdirty=true to troubleshoot some performance issues of our application.

I found a case where the entire scene root node is marked as dirty when pseudoclasses are used in a certain way. Since I am no expert about the CSS implementation, I wanted to ask whether this is a bug. The offending rule was:

.combo-box-base:hover .arrow-button:hover .arrow {
    -fx-background-color:red;
}

Note that the hover pseudo class is used twice, was my mistake that did go unnoticed. Whenever the hover state changed for the combo box, the root was shown as dirty

When changing it to this, everything works as expected and only the arrow is marked as dirty instead of the whole scene:

.combo-box-base > .arrow-button:hover .arrow {
    -fx-background-color:red;
}


Reply via email to