On Thu, 8 Jul 2021 21:24:28 GMT, Marius Hanl <mh...@openjdk.org> wrote:

>> modules/javafx.controls/src/main/java/javafx/scene/control/skin/TreeTableCellSkin.java
>>  line 107:
>> 
>>> 105: 
>>> 106:     @Override
>>> 107:     protected void layoutChildren(double x, double y, double w, double 
>>> h) {
>> 
>> This isn't a review, but just a question and a  comment.
>> 
>> Are there any other callers of `leftLabelPadding` that could be affected by 
>> the removal of the override?
>> 
>> Btw, you should add `/** {@inheritDoc} */` to the overridden 
>> `layoutChildren` method, since it is public API.
>
> good point. I didn't saw any difference but now had a deeper look. Looks like 
> there can be cirumstances, where overriding `layoutChildren ` is not enough.

Alright, I now override every method which did something with leftLabelPadding 
before.
I will share my notes here:
Note: All method do effectively the same as `leftLabelPadding()` did. (just 
earlier/later)

- **computePrefHeight** -> `prefWidth()` is always called with -1, so nothing 
got broken by not overriding this, but we should do it of course to be accurate 
in case we do one day.
- **computePrefWidth** -> this is needed for auto sizing. I saw that it was 
slightly off without, so this 100% needed.
- **computeMinWidth** -> the min width of a cell is not used, so nothing got 
broken by not overriding this but same as in computePrefHeight(), we should 
comply with the specs.
- **layoutChildren** -> I saw a slight off sizing because I forgot to subtract 
the indentation to the width. So I added this now as well.

Will also update the PR description.

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

PR: https://git.openjdk.java.net/jfx/pull/568

Reply via email to